Java List转String数组与String数组转List

String数据转List

String title = "\t 10月上旬\t 10月中旬\t 10月下旬"; 
String[] arrTitles = title.split("\t");
List<String> titleList = Arrays.asList(arrTitles);

方法1(不推荐):

List<String> titleList = Arrays.asList(arrTitles);

titleList结果:

注意:Arrays.asList()将数组转换为集合后,底层其实还是数组。Arrays.asList() 方法返回的并不是 java.util.ArrayList ,而是 java.util.Arrays 的一个内部类,这个内部类并没有实现集合的修改方法或者说并没有重写这些方法。使用集合的修改方法:add()、remove()、clear()会抛出异常。

方法2:

List list = new ArrayList<>(Arrays.asList(arrTitles));

方法3(推荐):

//使用 Java8 的Stream
List list2 = Arrays.stream(arrTitles).collect(Collectors.toList());
//基本类型也可以实现转换(依赖boxed的装箱操作)
int [] arrIndex = { 1, 2, 3 };
List listIndex = Arrays.stream(arrIndex).boxed().collect(Collectors.toList());

方法4:

//使用 Apache Commons Collections
List<String> list3 = new ArrayList<String>();
CollectionUtils.addAll(list3,arrTitles);

List转String数组

//List转String
String[] strs1 = titleList.toArray(new String[titleList.size()]);

strs1结果:

 

posted @ 2020-04-16 13:53  代码猫  阅读(36186)  评论(0编辑  收藏  举报