你遇到过这个问题么?TreeMap 自定义比较器时 两种遍历的中keySet()遍历取不到值??? 本帖最后由 bareheadzzq 于 2011-10-17 10:34:37 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 package com.class81.network.address;import java.util.Comparator;import java.util.Iterator;import java.util.Map;import java.util.TreeMap;public class TestMap { public static void main(String[] args) {//TreeMap 实现按元素的放入顺序排序,时只能用entrySet进行遍历,不能用KeySet()遍历// 所以Map集合尽量用entrySet()进行遍历 TreeMap<String, String> map = new TreeMap<String, String>( new Comparator<String>() { public int compare(String o1, String o2) { return 1; } } ); map.put("dd", "valuedd"); map.put("bb", "valuebb"); map.put("aa", "valueaa"); System.out.println(map); System.out.println(map.get("dd")); //还是要与Map中的键进行比较,而自定义比较器中都是return 1;所以找不到=的。 for (Iterator<Map.Entry<String, String>> iter = map.entrySet()// 返回此映射中包含的映射关系的 Set 视图。该 set 的迭代器将按升序返回这些条目 .iterator(); iter.hasNext();) { Map.Entry<String, String> entry = iter.next(); System.out.println("key=" + entry.getKey()); System.out.println("value=" + entry.getValue()); } }}/*{dd=valuedd, bb=valuebb, aa=valueaa}nullkey=ddvalue=valueddkey=bbvalue=valuebbkey=aavalue=valueaa * * */ java如何捕获键盘信号 java中的抛物线 项目中数据库统计数问题 java 问题 问个《Core Java 2》中一个多线程例题 关于 几个 日期 和 字符串 操作的问题 ????/ BufferedInputStream的问题 请各位帮我看看我这出什么问题了。为什么死循环。。 谁有JAVAMAIL的例子?给我一个 class文件没错,运行html文件没反应 补码的问题 sql错误,信息我没看懂,高手请进
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;public class TestMap {
public static void main(String[] args) {
//TreeMap 实现按元素的放入顺序排序,时只能用entrySet进行遍历,不能用KeySet()遍历
// 所以Map集合尽量用entrySet()进行遍历
TreeMap<String, String> map = new TreeMap<String, String>(
new Comparator<String>() {
public int compare(String o1, String o2) {
return 1;
}
}
);
map.put("dd", "valuedd");
map.put("bb", "valuebb");
map.put("aa", "valueaa");
System.out.println(map);
System.out.println(map.get("dd"));
//还是要与Map中的键进行比较,而自定义比较器中都是return 1;所以找不到=的。 for (Iterator<Map.Entry<String, String>> iter = map.entrySet()
// 返回此映射中包含的映射关系的 Set 视图。该 set 的迭代器将按升序返回这些条目
.iterator(); iter.hasNext();) {
Map.Entry<String, String> entry = iter.next();
System.out.println("key=" + entry.getKey());
System.out.println("value=" + entry.getValue());
}
}
}/*
{dd=valuedd, bb=valuebb, aa=valueaa}
null
key=dd
value=valuedd
key=bb
value=valuebb
key=aa
value=valueaa *
*
*/