📜  Java程序将数组转换为Set(HashSet),反之亦然(1)

📅  最后修改于: 2023-12-03 14:43:03.595000             🧑  作者: Mango

Java程序将数组转换为Set(HashSet),反之亦然

在Java中,数组和Set都是常见的数据结构。Java中的Set是一种不允许重复元素的集合,而数组可以包含重复元素。有时候我们需要在这两种数据结构之间进行转换。

本篇文章将介绍如何在Java中将数组转换为Set(HashSet),以及反之亦然。

将数组转换为Set(HashSet)

Java中提供了HashSet类来实现Set数据结构。我们可以通过如下代码将数组转换为Set:

String[] arr = {"apple", "banana", "orange", "orange", "pear"};
Set<String> set = new HashSet<>(Arrays.asList(arr));

System.out.println(set);

输出结果为:

[orange, pear, banana, apple]

代码解释:

  1. 声明一个String类型的数组arr,用于存储元素。
  2. 声明一个HashSet类型的set,用于存储不重复的元素。
  3. 使用Arrays.asList()方法将数组转换为List。
  4. 使用HashSet的构造方法,将转换后的List传入HashSet中,生成一个不重复的HashSet。
  5. 输出HashSet。

此时,我们就实现了将数组转换为Set的功能。

将Set(HashSet)转换为数组

将Set转换为数组稍微麻烦一些,需要使用集合的toArray方法。下面是示例代码:

Set<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("orange");
set.add("pear");
set.add("orange");

String[] arr = new String[set.size()];
set.toArray(arr);

System.out.println(Arrays.toString(arr));

输出结果为:

[orange, pear, banana, apple]

代码解释:

  1. 声明一个HashSet类型的set,用于存储不重复的元素。
  2. 使用add方法向set中添加元素。
  3. 声明一个String类型的数组arr,用于存储set转换后的元素。
  4. 使用set.toArray方法将set转换为数组,存储在arr中。
  5. 输出数组。

此时,我们就实现了将Set转换为数组的功能。

总结

Java中提供了Arrays.asList()和Set的构造函数,分别可以将数组转换为List,和将List转换为Set。同时,在Set中还有toArray方法可以将Set转换为数组。

以上就是本篇文章的介绍。希望对你在Java中使用数组和Set来处理数据有所帮助。