如何在 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。

更新于:2023-07-24

714 次浏览

启动您的 职业生涯

通过完成课程获得认证

开始
广告