迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

如何在 Java 中将列表转换为集合? ArrayList 到 HashSet 示例

作者:迹忆客 最近更新:2023/02/05 浏览次数:

在 Java 中将 ArrayList 转换为 Set 意味着从充满对象的 ArrayList 创建一个类似于 HashSet 的 Set 实现。 在将 ArrayList 转换为 HashSet 之前,请记住 List 保持插入顺序并保证相同,但 Set 没有这样的义务。 此外,List 允许重复但 Set 不允许任何重复,这意味着如果我们的 ArrayList 中有重复项,当我们将 ArrayList 转换为 HashSet 时它们将丢失,这就是 ArrayList 有时大小与转换后的 HashSet大小不匹配的原因 。

ArrayList 转换为 Set 与将 Map 转换为 List 完全不同,但有一个共同点,即采用集合对象的构造函数。 HashSet 还有一个构造函数,它接受另一个集合对象,例如 ArrayList 并从这些元素中创建 Set。

我们还在 Java 中的 10 个 ArrayList 示例中看到了一点,我们将在此处详细介绍。


如何将列表转换为 Java 中的集合? 循序渐进的例子

现在,让我们看看将 List 转换为 Set 的几种方法,例如 Java 中的 HashSet

1. ArrayList to Set转换示例

ArrayList 或任何其他 List 实现转换为 HashSet 或任何其他 Set 实现并不难编写。 在本篇文章中,我们将看到在 Java 中将 ArrayList 转换为 HashSet 的完整代码示例:

package test;

import java.util.ArrayList;
import java.util.HashSet;

public class ArrayListToSetConverter {

    public static void main(String args[]){
      
        //创建 ArrayList 以转换为 HashSet
        ArrayList companies = new ArrayList();
        companies.add("Sony");
        companies.add("Samsung");
        companies.add("Microsoft");
        companies.add("Intel");
        companies.add("Sony");
      
        System.out.println("Size of ArrayList before Converstion: " + companies.size());
        System.out.println(companies);
      
        //在 Java 中将 ArrayList 转换为 HashSet
        HashSet companySet = new HashSet(companies);
      
        System.out.println("Size of HashSet after Converstion: " + companies.size());
        System.out.println(companySet);
  
    }
}

Java 中将列表转换为集合

你可能已经注意到,转化的 ArrayListHashSet 的 Size 不一样,比原来的 ArrayList 小 1,因为重复条目“Sony”在 Set 中只有一次。

这是从 ArrayList 中删除重复项的另一种好方法。 只需将 ArrayList 的条目复制到 Set 中,然后将其复制回 ArrayList 中,我们就不再有重复项了。

这就是在 Java 中将 ArrayList 转换为 HashSet 的快速方法。 我们可以查看 ArrayList 和 Vector 之间的区别 来了解有关 ArrayList 和其他 Collection 类的更多信息。 还可以使用此技巧在 Java 中将一个集合转换为另一个集合。 只要该类实现了 Collection 接口,就可以在 Java 中使用复制构造函数将元素从一个 Collection 复制到另一个,并将一个集合转换为另一个。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Java 中获取文件大小

发布时间:2023/05/01 浏览次数:139 分类:Java

Java 提供了不同的方法来获取文件的字节大小。 本教程演示了在 Java 中获取文件大小的不同方法。使用 Java IO 的文件类获取文件大小 Java IO 包的 File 类提供了以字节为单位获取文件大小的功能。

Java 中的文件分隔符

发布时间:2023/05/01 浏览次数:108 分类:Java

本篇文章介绍了 Java 中的文件分隔符。Java 中的文件分隔符 文件分隔符是用来分隔目录的字符; 例如,Unix 使用 /,Windows 使用 \ 作为文件分隔符。

Java 中的文件过滤器

发布时间:2023/05/01 浏览次数:193 分类:Java

本篇文章介绍如何在 Java 中使用 FileFilter。FileFilter 用于过滤具有特定扩展名的文件。 Java内置包IO和Apache Commons IO为FileFilter提供了类和接口来进行文件过滤操作。

Java 获取 ISO 8601 格式的当前时间戳

发布时间:2023/05/01 浏览次数:132 分类:Java

本篇文章介绍了 ISO 8601 日期格式、其重要性及其在 Java 中的使用。 它还列出了一些优点来强调为什么应该使用 ISO 格式来表示日期。

在 Java 中获取数组的子集

发布时间:2023/05/01 浏览次数:142 分类:Java

本篇文章介绍了几种在 Java 中获取数组子集的方法。使用 Arrays.copyOf() 方法获取数组的子集 使用 Arrays.copyOfRange() 方法获取数组的子集

用 Java 填充二维数组

发布时间:2023/05/01 浏览次数:110 分类:Java

二维数组是基于表结构的,即行和列,填充二维数组不能通过简单的添加到数组操作来完成。 本篇文章介绍如何在 Java 中填充二维数组。

Java 中的自然排序

发布时间:2023/05/01 浏览次数:132 分类:Java

Java 中最常用的顺序是自然顺序。 本文将展示如何使用 naturalOrder() 函数对数组进行排序。

计算 Java 数组中的重复元素

发布时间:2023/05/01 浏览次数:202 分类:Java

本篇文章介绍Java计算数组中重复元素的方法。计算 Java 数组中的重复元素。我们可以创建一个程序来计算数组中的重复元素。 该数组可以是未排序的,也可以是已排序的。

Java 中 List 和 Arraylist 的区别

发布时间:2023/05/01 浏览次数:90 分类:Java

表示为单个单元的一组单个对象称为集合。 在 Java 中,Collection 是一个具有多个已定义接口和类的框架,用于将一组对象表示为一个单元。 它允许我们操纵

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便