获得Map<String, String> map的值? 本帖最后由 y11111494 于 2010-01-05 10:36:18 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 多看看API啊,API上面的都有,也能提高自己水平! map中放的数据是:Map.Entry<String, String> pairsmap.put(pairs.getKey(),pairs.getValue()); map.get("a"),这就是通过key得到value的值 推荐楼主下载一个Java中文API,API版本跟你java版本一致,这是提高java水平的快捷方式map.put("a", "b");map.get("a"); 使用map3.get("a")返回的是null System.out.println(map.get(pars.getKey()));LZ多看API呀... 对不起重新声明一下: Map<String, String> map = new IdentityHashMap<String, String>();如果 Map<String, String> map = new HashMap<String, String>();这样定义按照大家的方法是没错的。 Map<String, String> map = new IdentityHashMap<String, String> (); map.put("a", "b"); map.put("c", "d"); System.out.println(map.get("a")); /** * 打印结果:b */ map里面可以存放:map.put("a","b");map.put("a","c");map.put("a","d");这是如何查找?map.get("a")返回null map里面可以存放:map.put("a","b");map.put("a","c");map.put("a","d");这是如何查找?map.get("a")返回null Map<String, String> map = new IdentityHashMap<String, String> (); map.put("a","b"); map.put("a","c"); map.put("a","d"); map.put("e","f"); System.out.println(map.get("a")); /** * 打印结果:d */这是不可能返回null的,因为你指定的key,在map中存在,只是他会返回同一个key最后一个对应的value,map中不应该存在一个key,对应多个value。标准一个key,一个value。按照你这样的逻辑结构,你可以改造一下map的泛型,如下:Map<String, List<String>> map = new IdentityHashMap<String, List<String>> ();orMap<String, String[]> map = new IdentityHashMap<String, String[]> ();等。 Map<String, String> map = new IdentityHashMap<String, String> (); map.put("a","b"); map.put("a","c"); map.put("a","d"); map.put("e","f"); System.out.println(map.get("a")); /** * 打印结果:d */这是不可能返回null的,因为你指定的key,在map中存在,只是他会返回同一个key最后一个对应的value,map中不应该存在一个key,对应多个value。标准一个key,一个value。按照你这样的逻辑结构,你可以改造一下map的泛型,如下:Map<String, List<String>> map = new IdentityHashMap<String, List<String>> ();orMap<String, String[]> map = new IdentityHashMap<String, String[]> (); map里面可以存放: map.put("a","b"); map.put("a","c"); map.put("a","d"); 这是如何查找? map.get("a")返回null 肯定不是返回null是返回最后一个压进去的值。也就是说返回是d IdentitiHashMap比较的是对象地址 map.put("a","b"); map.put("a","c"); map.put("a","d");map 的 key 是不允许重复的。 IdentitiHashMap他比较的是引用,,,hashmap比较的是字符串的哈希码,或对象地址的哈希码但是当前问题中字符串的哈希码比较和引用比较没什么区别,所以看不出效果至于hashmap是如何把key 和value进行匹配的, 估计就是根据key算出一个hash地址,把value存进去。3个‘a’的hash地址相同,value当然就是存的最后一个了。而重复put 相同的的key他不报错,只是规定你key不能重复,一个key对应一个value。你输入相同的key他会覆盖掉以前的数据,这是很危险的,所以在put key的时候要坐下是否重复的判断。 J2SE新手求教!!!!! 类型静态属性如何在超类获取? 菜鸟想学Java,求入门资料。 关于接口的抽象方法 问个 struts2 session的问题 请问java如何读取wndows日志文件? 求助啊--关于arraylist的 想要美化界面,该怎么办? LDAP的权限问题 有人用IntelliJ IDEA写JAVA程序吗?问个关于设置的问题 杭电hdu 2133 求一个月中的某一天是星期几问题? 向 Map<String, String>中增加加元素
Map.Entry<String, String> pairs
map.put(pairs.getKey(),pairs.getValue());
map.put("a", "b");
map.get("a");
使用map3.get("a")
返回的是null
System.out.println(map.get(pars.getKey()));LZ多看API呀...
Map<String, String> map = new IdentityHashMap<String, String>();如果 Map<String, String> map = new HashMap<String, String>();这样定义
按照大家的方法是没错的。
map.put("c", "d"); System.out.println(map.get("a")); /**
* 打印结果:b
*/
map里面可以存放:
map.put("a","b");
map.put("a","c");
map.put("a","d");
这是如何查找?
map.get("a")返回null
map里面可以存放:
map.put("a","b");
map.put("a","c");
map.put("a","d");
这是如何查找?
map.get("a")返回null
Map<String, String> map = new IdentityHashMap<String, String> (); map.put("a","b");
map.put("a","c");
map.put("a","d");
map.put("e","f"); System.out.println(map.get("a"));
/**
* 打印结果:d
*/
这是不可能返回null的,因为你指定的key,在map中存在,只是他会返回同一个key最后一个对应的value,map中不应该存在一个key,对应多个value。
标准一个key,一个value。按照你这样的逻辑结构,你可以改造一下map的泛型,如下:Map<String, List<String>> map = new IdentityHashMap<String, List<String>> ();
or
Map<String, String[]> map = new IdentityHashMap<String, String[]> ();等。
Map<String, String> map = new IdentityHashMap<String, String> (); map.put("a","b");
map.put("a","c");
map.put("a","d");
map.put("e","f"); System.out.println(map.get("a"));
/**
* 打印结果:d
*/
这是不可能返回null的,因为你指定的key,在map中存在,只是他会返回同一个key最后一个对应的value,map中不应该存在一个key,对应多个value。
标准一个key,一个value。按照你这样的逻辑结构,你可以改造一下map的泛型,如下:Map<String, List<String>> map = new IdentityHashMap<String, List<String>> ();
or
Map<String, String[]> map = new IdentityHashMap<String, String[]> ();
map.put("a","b");
map.put("a","c");
map.put("a","d");
这是如何查找?
map.get("a")返回null
肯定不是返回null
是返回最后一个压进去的值。也就是说返回是d
map.put("a","c");
map.put("a","d");map 的 key 是不允许重复的。
IdentitiHashMap他比较的是引用,,,
hashmap比较的是字符串的哈希码,或对象地址的哈希码
但是当前问题中字符串的哈希码比较和引用比较没什么区别,所以看不出效果至于hashmap是如何把key 和value进行匹配的,
估计就是根据key算出一个hash地址,把value存进去。3个‘a’的hash地址相同,value当然就是存的最后一个了。
而重复put 相同的的key他不报错,只是规定你key不能重复,一个key对应一个value。你输入相同的key他会覆盖掉以前的数据,这是很危险的,所以在put key的时候要坐下是否重复的判断。