• Java解决java.lang.OutOfMemoryError: Java heap space错误


    栈异常信息为:

    Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
            at java.util.Arrays.copyOf(Arrays.java:2882)
            at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
            at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:390)
            at java.lang.StringBuilder.append(StringBuilder.java:119)
            at com.xxx.mobile.xx.XXXXClass.main(XXXXClass.java:93)

    仔细检查XXXXClass.java类的第93行,发现:

    if (phoneUidMap.containsKey(phone)) {
                        phoneUidMap.put(phone, phoneUidMap + "," + uid);    //这是第93行
                    } else {
                        phoneUidMap.put(phone, uid);
                    }

    直接把一个map和字符串进行连接了,其实是想如果map中已经包含就把原value追加上新value,由于疏忽把map.get(xxx)漏写成了map。改成

    phoneUidMap.put(phone, phoneUidMap.get(phone) + "," + uid);

    就运行成功了。

  • 相关阅读:
    【u026】花园(garden)
    【BZOJ 1040】[ZJOI2008]骑士
    【t100】汤姆斯的天堂梦
    【BZOJ 1038】[ZJOI2008]瞭望塔
    【t096】树的序号
    Java Web整合开发(82)
    2 HTML解析
    T3186 队列练习2 codevs
    T3185 队列练习1 codevs
    T1191 数轴染色 codevs
  • 原文地址:https://www.cnblogs.com/aprilrain/p/2915288.html
Copyright © 2020-2023  润新知