A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© gtf 中级黑马   /  2014-7-9 07:58  /  792 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int[] num = {2,3,4};用aslist方法变成集合时,打印集合显示的是数组的地址。
Integer[] num  = {2,3,4};用aslist方法变成集合时,打印的是数组里面的数据2,3,4.
哪位朋友帮忙解惑?

1 个回复

倒序浏览
  1.        int[] arr = {1,2,3,4};    //初始化一个INT数组
  2.                 List al = Arrays.asList(arr);

  3.                 System.out.println(al);
  4. //输出[[I@1db9742]      
  5. //可以看到打印的是al这个集合中的一个元素,[b]说明al把arr这个引用看做是一个元素了[/b]。
  6. //asList(T... a),里面可以接收一个可变参数,可以直接这样做Arrays.asList(1,2,3,4),
  7.            Iterator it = al.iterator();
  8.            while (it.hasNext())
  9.            {
  10.                  System.out.println( it.next().getClass());
  11.            }
  12.         //输出的是四个Class.java.lang.Integer,说明自动装箱了

  13.                 Object obj = arr;
  14.                 System.out.println(obj);
  15.                 [I@1db9742
复制代码

asList按照API给的格式写,我觉得会比较好一点
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马