1、String[] 转 List
String[] strs = new String[]{"1", "2", "3"};
List<String> strLists = new ArrayList<>(Arrays.asList(strs));
查看源码发现,Arrays.asList()返回的ArrayList继承自AbstractList,它仅支持那些不会改变数组大小的操作,所以任何对底层数据结构的尺寸进行修改的方法都会出现异常,Arrays.asList()返回固定尺寸的List。
所有为了转换后的List可以 add 和 remove,需要用 new ArrayList<>() 重新包装一下。
2、List 转 String[]
List<String> strLists = new ArrayList<>();
strLists.add("1");
strLists.add("2");
strLists.add("3");
String[] strs = strLists.toArray(new String[0]);