今天敲构造函数的时候,赋值颠倒了,导致赋值失败,一直是0,下次用this,看能否减少错误。
public SortTran(String it, int nu) {
name = it;
num = nu;//写错导致没有传值,都为0
}
使用排序函数的时候,忘了颠倒顺序。
Collections.sort(sortTranList); // for find prefix
Collections.reverse(sortTranList);//逆序
写if的时候,像偷懒,结果编译失败。
HashMap<String, Integer> freqSet = new HashMap<>();
int flag = (freqSet.containsKey(item)) ? freqSet.put(item, freqSet.get(item) + count) : freqSet.put(item, count);
// 编译不过java.lang.NullPointerException
返回多个对象的时候,可以封装到类里面。
在迭代的时候,想删除hashmap里面的元素,两种写法都失败了,最后存入arraylist,一起删除。
for (Map.Entry<String, Integer> ent : freqSet.entrySet()) {
if ((float) ent.getValue() < minSupport) {
del.add(ent.getKey());
// freqSet.remove(ent.getKey()); 编译不过
// freqSet.remove(ent); 没有删除元素
}
}
for (String item : del) {
freqSet.remove(item);
}
对hashmap的元素更改value,value是一个arraylist,想增加一个item到arraylist中,三种方法都可以。可以直接get然后add。
headerValue = new ArrayList<>(headerTable.get(name));
headerValue.add(newNode);
headerTable.put(name, headerValue);
headerValue = headerTable.get(name);
headerValue.add(newNode);
headerTable.put(name, headerValue);
headerTable.get(name).add(newNode);
原文:http://www.cnblogs.com/ywys/p/4787791.html