如何在 Java 中使用列表创建 TreeSet?
Java 中的 TreeSet 以排序顺序存储唯一元素。它实现了 SortedSet 接口。TreeSet 接口内部使用一种称为红黑树的平衡树。Java 中的列表是一种数据结构,用于按添加顺序存储元素。我们可以在 Java 中通过多种方式使用列表创建 TreeSet。本文讨论了在 Java 中使用列表创建 TreeSet 的方法。
在 Java 中使用列表创建 TreeSet 的方法
在 Java 中,可以使用三种方法使用列表创建 TreeSet。它们如下:
从现有列表中逐个将元素添加到 TreeSet。
创建一个 TreeSet 对象,使用构造函数对其进行初始化,并传递列表。
使用 Collections.addAll() 方法将列表中的元素添加到 TreeSet。
让我们深入了解这些方法。
从现有列表中逐个将元素添加到 TreeSet。
这是我们可以使用现有列表创建 TreeSet 的基本方法。首先,我们将创建一个列表并向其中添加元素。然后,我们将创建一个 TreeSet 对象,并逐个将列表中的元素添加到其中。我们将遍历列表,并将列表的元素添加到 TreeSet。这样,就可以使用列表形成 TreeSet。
示例
以下是如何通过从现有列表中逐个将元素添加到 TreeSet 来从列表创建 TreeSet 的示例:
import java.util.*; public class Example{ public static void main(String args[]) { //Create a new List ArrayList<String> list = new ArrayList<String>(); list.add("India"); list.add("USA"); list.add("France"); list.add("India"); //Display ArrayList System.out.println("The list is " + list); //Create a TreeSet TreeSet<String> ts= new TreeSet<String>(); //add elements to the TreeSet from the list one by one for(String str:list){ ts.add(str); } // Print TreeSet System.out.println("The TreeSet obtained from the list is " + ts); } }
输出
以下是上述代码的输出
The list is [India, USA, France, India] The TreeSet obtained from the list is [France, India, USA]
解释
在上述代码中,我们创建了一个列表,添加了元素,并打印了相同的元素。列表可以包含重复元素。然后,我们创建了一个 TreeSet。我们通过遍历列表将列表的元素添加到 TreeSet。在这里,TreeSet 将包含列表中的唯一元素。
创建 TreeSet 对象,使用构造函数对其进行初始化,并传递列表。
下一个方法是创建一个列表并向其中添加元素。然后,我们创建一个 TreeSet 对象并使用构造函数对其进行初始化。然后,我们将列表作为参数传递给 TreeSet 构造函数,以便将列表中的元素添加到 TreeSet。
示例
以下是如何通过将列表传递给 TreeSet 构造函数来从列表创建 TreeSet 的示例:
import java.util.*; public class Example{ public static void main(String args[]) { //Create a new List ArrayList<String> list = new ArrayList<String>(); list.add("India"); list.add("USA"); list.add("France"); list.add("India"); //Display ArrayList System.out.println("The list is " + list); //Create a TreeSet and pass list as a parameter TreeSet<String> ts= new TreeSet<String>(list); // Print TreeSet System.out.println("The TreeSet obtained from the list is " + ts); } }
输出
以下是输出
The list is [India, USA, France, India] The TreeSet obtained from the list is [France, India, USA]
解释
在上述代码中,我们创建了一个列表并向其中添加了元素。然后创建一个 TreeSet 对象,并将列表作为参数传递给 TreeSet 构造函数。如前所述,列表可以包含重复项,但 TreeSet 不可以。然后我们打印了列表。
addAll() 方法
Java 中 Collections 类的 addAll() 方法用于将一个集合中的元素添加到另一个集合中。因此,我们将创建一个列表,向其中添加元素并创建一个 TreeSet。使用 addAll() 方法,我们将列表中的元素添加到 TreeSet。
示例
以下是如何使用 addAll() 方法从列表创建 TreeSet 的示例:
import java.util.*; public class Example{ public static void main(String args[]) { //Create a new List ArrayList<String> list = new ArrayList<String>(); list.add("India"); list.add("USA"); list.add("France"); list.add("India"); //Display ArrayList System.out.println("The list is " + list); //Create a TreeSet and pass list as a parameter TreeSet<String> ts= new TreeSet<String>(list); //addAll method ts.addAll(list); // Print TreeSet System.out.println("The TreeSet obtained from the list is " + ts); } }
输出
以下是上述代码的输出
The list is [India, USA, France, India] The TreeSet obtained from the list is [France, India, USA]
解释
在上述代码中,我们创建了一个列表,向其中添加了元素,并创建了一个 TreeSet。因此,addAll() 方法将列表中的元素添加到 TreeSet。然后,我们打印了 TreeSet。