下面是对Lists.newArrayList()和new ArrayList<>()的详细区别进行举例说明

创建具有初始数据列表
java Copy code
import com.google.common.collect.Lists;

List<String> list1 = Lists.newArrayList(“apple“, “banana“, “orange“);
List<String> list2 = new ArrayList<>(Arrays.asList(“apple“, “banana“, “orange“));
这个例子中,Lists.newArrayList()使用Guava库提供的方法可以直接初始数据作为参数传递进去创建一个包指定元素列表。而使用new ArrayList<>则需要通过Arrays.asList()方法创建一个固定长度的List,然后再将其转换为ArrayList。

创建具有初始容量的列表
java Copy code
import com.google.common.collect.Lists;

List<String> list3 = Lists.newArrayListWithCapacity(10);
List<String> list4 = new ArrayList<>(10);
这里,Lists.newArrayListWithCapacity()是Guava库提供的方法,它创建一个具有指定初始容量的ArrayList。而new ArrayList<>(10)创建一个具有初始容量的ArrayList,并设置其初始大小为10。

创建可变参数列表
java Copy code
import com.google.common.collect.Lists;

List<String> list5 = Lists.newArrayList(“apple“, “banana“, “orange“);
List<String> list6 = new ArrayList<>(List.of(“apple“, “banana“, “orange”));
这里,Lists.newArrayList()可以接受可变参数可以直接传入多个参数创建一个包含这些参数的列表。而new ArrayList<>(List.of())使用Java 9及更高版本中的List.of()方法来创建一个包指定元素固定列表

总结

Lists.newArrayList()是Guava库提供的方法,提供了一些额外功能和便利。
new ArrayList<>()是Java标准库中方式,无需额外依赖
Lists.newArrayList()可以直接传入初始数据或设置初始容量,而new ArrayList<>()需要通过其他方法转换或设置初始容量。
使用哪种方式取决于你的项目需求和偏好,以及是否已经使用了Guava库。

原文地址:https://blog.csdn.net/gb4215287/article/details/134788960

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_42262.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注