您的位置:首页 > 编程语言 > Java开发

java学习之三

2015-09-07 00:18 441 查看
今天敲构造函数的时候,赋值颠倒了,导致赋值失败,一直是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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: