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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吴通 中级黑马   /  2012-8-31 21:02  /  2186 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


import java.util.*;
class ListDemo
{
public static void main(String[] args)
{
  ArrayList<String> al=new ArrayList<String>();
  al.add("abc1");
  al.add("abc2");
  al.add("abc3");
  sop(al);
}
public static void sop(Object obj)
{
  System.out.println(obj);
}
}

/*
int[] arr={2,3,4}数组定义的时候就能初始化,
虽然集合的长度不固定,但是打印的时候集合也是显示的有效的长度[abc1,abc2,abc3]
List集合能不能在定义的时候就初始化呢?
从而省去了al.add("abc1");
    al.add("abc2");
    al.add("abc3");
    这样的操作?
*/

评分

参与人数 1技术分 +1 收起 理由
张立江 + 1 赞一个!

查看全部评分

4 个回复

倒序浏览
假设已经有了一个ArrayList<String> al,里面有元素"abc1","abc2","abc3"。
那么用构造方法ArrayList<? extends String> al1 = new ArrayList<? extends String>(al);就可在定义集合的时候也初始化了。
但前提是要先已经有了一个集合,并且要注意泛型的限定<? extends E>
回复 使用道具 举报
其实在执行ArrayList<String> al=new ArrayList<String>();这句话的时候已经初始化了al,只不过al是初始容量为10的空列表。

评分

参与人数 1技术分 +1 收起 理由
张立江 + 1 很给力!

查看全部评分

回复 使用道具 举报
可以使用Arrays.asList 将数组转换对应的List,如: List<Integer> list2 = Arrays.asList(1,2,4);
也可以使用楼上的方法,List是一个接口,只能使用其实现类的构造方法来初始化;



回复 使用道具 举报
谢谢     已解决
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马