黑马程序员技术交流社区

标题: 请求指教 [打印本页]

作者: 刘永贵    时间: 2013-9-1 20:40
标题: 请求指教
本帖最后由 刘永贵 于 2013-9-2 09:45 编辑


为什么输出的结果会是这样

作者: 张俊生    时间: 2013-9-1 20:53
我个人理解,就看过一次视频,第一个输出null是因为map.put是输出的之前01键所对的值,
第二个同理就会输出zhangsan1,并用wangwu覆盖zhangsan1。
map.containsKey是输出键022所对的值,022没有赋值过所以是null。
value是包含集合中的所以值,map包含集合中的键和值。
作者: 神之梦    时间: 2013-9-1 22:18
看下API,了解下几个方法的返回值,就明白了
作者: binghaiwang    时间: 2013-9-1 22:45
  1. import java.util.Map;
  2. import java.util.TreeMap;

  3. public class Test {

  4.         
  5.         public static void main(String[] args){
  6.                
  7.                
  8.                 Map<Integer,String> map = new TreeMap<Integer,String>();
  9.                 //put 方法返回值是value,但是这个value必须要先建立了映射关系才可以
  10.                 System.out.println(map.put(1, "abc"));//此方法该键值对还没有建立映射关系
  11.                 String value = map.put(1, "cbc");//这里键值一样,因此将value覆盖,也就是说上边的键值对已有映射关系,因此返回了被替换的值
  12.                 String value1 = map.get(1);
  13.                 System.out.println("被替换掉的值:"+value);
  14.                 System.out.println("新增加的值:"+value1);
  15.                 System.out.println(map);
  16.         }

  17. }
复制代码
已在源代码中注视说明,认真看下API实在不懂看下源代码就懂了。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2