java - 在java中将一个List放在另一个List的参数中

标签 java

抱歉,如果标题不清楚,但我不确定如何用那么少的文字来描述它。好的,假设我们有这个声明:

ArrayList<String> list = new ArrayList<String>();
//add items to list
Set<String> set = new TreeSet<String>(list);

现在,据我了解,set 将从 list 接收数据并对它们进行排序,因为这就是 TreeSet 所做的。但是,在 oracle 网站上,我没有看到 HashSet 类中有任何将 List 作为参数的构造函数。所以,我不明白如果没有定义的构造函数来接受 List 作为参数,为什么这会起作用。

最佳答案

TreeSet 有一个接受Collection 的构造函数,List Collection(List 扩展 Collection)。

Java 集合框架中的许多类都遵循相同的概念。例如,ArrayList 也有一个采用Collection 的构造函数。这使得在集合之间复制数据变得容易。

关于java - 在java中将一个List放在另一个List的参数中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6820854/

相关文章:

java - Eclipse 中的 Android SDK Manager 找不到路径

java - 如何解决错误 "android.database.CursorIndexOutOfBoundsException: Index 1 requested, with a size of 1"

java - Redis中不同的连接异常

java - 约翰逊特罗特算法

java - 查询时出现非法字符

java - 使用 OCR 从图像文件中读取文本的 API

java - 如何在 macOS 上将 Java 更新到 7?

java - Spring AOP @Before 服务中 - Before Advice 检查安全性

java - XMLStreamWriter-将长字符串写入xml writer的问题

java - 无法调用index.jsp