数组和list的互相转换

一.数组转list:

String[] str = new String[] { "1", "2"};

1.通用的方法

List<String> list = new ArrayList<String>();
for (String s : str) {
   list.add(s);
}

2.调用Arrays

List<String> strList = Arrays.asList(str);

值得注意的是,当遇到Arrays.asList(new int[] { 1,2})或Arrays.asList(newString[] { "a","b"},"c")时,结果会是[[I@2a139a55]或[[Ljava.lang.String;@15db9742, c]的东西,大致原因是违反了可变参数的规范。

为了确保意外的发生,

如果仅将数组转为String类型的list:Arrays.toString(new String[] { "1", "2" })

如果将基本类型的数组转为list:Arrays.asList(ArrayUtils.toObject(new int[] { 1, 2 }))

如果将引用型数组转为list:Arrays.asList(new String[] { "1", "2" })

3.调用Collections

List myList = new ArrayList();

Collections.addAll(myList, str);

二.list转数组

List list = new ArrayList();
list.add("1");
list.add("2");

String[] str = (String[])list.toArray(new String[list.size()]);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值