我想从社区中获得一些关于我编写的代码的建议。我有......
TreeMap<Integer,TreeMap<Integer,String>> tableError;
...我有这个toString()
方法:
public String toString(){
StringBuilder s = new StringBuilder();
for( Integer line : this.tableError.keySet()){
for(Integer pos : this.tableError.get(line).keySet()){
s.append("line: "+line);
s.append(":"+pos);
s.append("\t"+this.tableError.get(line).get(pos));
s.append("\n");
}
}
return s.toString();
}
我知道TreeMap
在算法上按其键排序。我想知道通过String
方法获得的toString()
是否也总是按我的pos变量排序?
我的困惑部分是因为keySet()
的javadoc声称它返回Set
,但是没有明确承诺密钥集已经排序。至少,我没有看到任何这样的保证。