Java中 Array、List、Set互相转换

一:Array数组转List 

String[] staffs = new String[]{"A", "B", "C"};
List staffsList = Arrays.asList(staffs);

//注意: Arrays.asList() 返回一个受指定数组决定的固定大小的列表。所以不能做 add 、 remove 等操作,否则会报错。

List staffsList = Arrays.asList(staffs);
staffsList.add("D"); // UnsupportedOperationException
staffsList.remove(0); // UnsupportedOperationException

//一下方式可以进行增删操作。

List staffsList = new ArrayList<String>();
for(String temp: staffs){
  staffsList.add(temp);
}
staffsList.add("D"); // ok
staffsList.remove(0); // ok

二:数组转Set

String[] staffs = new String[]{"A", "B", "C"};
Set<String> staffsSet = new HashSet<>(Arrays.asList(staffs));
staffsSet.add("D"); // ok
staffsSet.remove("Tom"); // ok

三:List转数组

String[] staffs = new String[]{"A", "B", "C"};
List staffsList = Arrays.asList(staffs);

Object[] result = staffsList.toArray();

四:List转Set

String[] staffs = new String[]{"A", "B", "C"};
List staffsList = Arrays.asList(staffs);

Set result = new HashSet(staffsList);

五:Set转数组

String[] staffs = new String[]{"A", "B", "C"};
Set<String> staffsSet = new HashSet<>(Arrays.asList(staffs));

Object[] result = staffsSet.toArray();

六:Set转List

String[] staffs = new String[]{"A", "B", "C"};
Set<String> staffsSet = new HashSet<>(Arrays.asList(staffs));

List<String> result = new ArrayList<>(staffsSet);

猜你喜欢

转载自blog.csdn.net/yexiaomodemo/article/details/105870463