一、使用Arrays.asList()
String[] strArray = {"A","B","C"}; List<String> strList = Arrays.asList(strArray);
这是一种简单的方法,使用Arrays类提供的asList()方法把数组转换为List类型。需要注意的是,asList()返回的是一个固定长度的List,即不能增加或删除元素,否则会报UnsupportedOperationException异常。
二、使用循环遍历
String[] strArray = {"A","B","C"}; List<String> strList = new ArrayList<>(); for(String str : strArray){ strList.add(str); }
使用循环遍历的方法,需要先创建一个空的ArrayList对象,然后使用for-each循环遍历数组,逐个添加元素到List中。
三、使用Streams API
String[] strArray = {"A","B","C"}; List<String> strList = Arrays.stream(strArray).collect(Collectors.toList());
使用Java 8引入的Streams API,需要先把数组转换为Stream对象,然后使用collect()方法把Stream对象转换成List类型。需要注意的是,Stream流只能消费一次,所以在进行一些操作时要慎重。
四、使用Guava库
String[] strArray = {"A","B","C"}; List<String> strList = Lists.newArrayList(strArray);
Guava是Google开发的一个Java常用库,提供了许多实用的工具类,包括Lists类提供的newArrayList()方法可以直接把数组转换成List类型。
总结
对于string数组转List类型这个问题,有多种解决办法,每种方法都有自己的优势和劣势,在选择时需要根据具体情况做出选择。一般来说,如果只是简单的转换,使用Arrays.asList()方法是最简单的,如果需要对List进行增删改查操作,使用ArrayList创建新的List对象;如果在Java 8及以上版本,使用Streams API可以直接转换;如果已经使用了Guava库,可以直接使用其提供的工具,提高开发效率。