迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > 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 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Do you understand JavaScript closures?

发布时间:2025/02/21 浏览次数:108 分类:JavaScript

The function of a closure can be inferred from its name, suggesting that it is related to the concept of scope. A closure itself is a core concept in JavaScript, and being a core concept, it is naturally also a difficult one.

Do you know about the hidden traps in variables in JavaScript?

发布时间:2025/02/21 浏览次数:178 分类:JavaScript

Whether you're just starting to learn JavaScript or have been using it for a long time, I believe you'll encounter some traps related to JavaScript variable scope. The goal is to identify these traps before you fall into them, in order to av

How much do you know about the Prototype Chain?

发布时间:2025/02/21 浏览次数:150 分类:JavaScript

The prototype chain can be considered one of the core features of JavaScript, and certainly one of its more challenging aspects. If you've learned other object-oriented programming languages, you may find it somewhat confusing when you start

JavaScript POST

发布时间:2024/03/23 浏览次数:96 分类:JavaScript

本教程讲解如何在不使用 JavaScript 表单的情况下发送 POST 数据。

扫一扫阅读全部技术教程

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

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便