商城首页欢迎来到中国正版软件门户

您的位置:首页 >Java Collection集合的ArrayList和HashSet怎么用

Java Collection集合的ArrayList和HashSet怎么用

  发布于2023-05-03 阅读(0)

扫一扫,手机访问

    Java Collection集合的ArrayList和HashSet怎么用

    Collection

    Collection接口被List接口和Set接口继承

    List

    ArrayList是List接口的实现类

    ArrayList

    ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。

    ArrayList 继承了 AbstractList ,并实现了 List 接口。

    创建ArrayList对象:

    public class List {
        public static void main(String[] args) {
            var list = new ArrayList();
        }
    }

    向集合中添加数据:

    add()

    public class List {
        public static void main(String[] args) {
            var list = new ArrayList();
            list.add("a");
            list.add(1);
            list.add(1);
            System.out.println(list);
        }
    }

    Java Collection集合的ArrayList和HashSet怎么用

    清空集合数据:

    clear()

    public class List {
        public static void main(String[] args) {
            var list = new ArrayList();
            list.add("a");
            list.add(1);
            list.add(1);
            System.out.println(list);
            list.clear();
            System.out.println(list);
        }
    }

    Java Collection集合的ArrayList和HashSet怎么用

    修改指定索引位置的对象

    set()

    public class List {
        public static void main(String[] args) {
            var list = new ArrayList();
            list.add("a");
            list.add(1);
            list.add(1);
            System.out.println(list);
            list.set(2, "a");
            System.out.println(list);
        }
    }

    Java Collection集合的ArrayList和HashSet怎么用

    Set

    HashSet
    • HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。

    • HashSet 允许有 null 值。

    • HashSet 是无序的,即不会记录插入的顺序。

    • HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。 您必须在多线程访问时显式同步对 HashSet 的并发访问。

    • HashSet 实现了 Set 接口。

    创建ArrayList对象:

    public class Set {
        public static void main(String[] args) {
            var set = new HashSet<>();
          
        }
    }

    向集合中添加数据:

    add()

    集合中的元素不能重复

    public class Set {
        public static void main(String[] args) {
            var set = new HashSet<>();
            set.add(1);
            set.add("a");
            set.add("a");
            System.out.println(set);
        }
    }

    Java Collection集合的ArrayList和HashSet怎么用

    清空集合数据:

    clear()

    public class Set {
        public static void main(String[] args) {
            var set = new HashSet<>();
            set.add(1);
            set.add("a");
            set.add("a");
            System.out.println(set);
            set.clear();
            System.out.println(set);
        }
    }

    Java Collection集合的ArrayList和HashSet怎么用

    删除指定元素

    public class Set {
        public static void main(String[] args) {
            var set = new HashSet<>();
            set.add(1);
            set.add("a");
            set.add("a");
            System.out.println(set);
            set.remove("a");
            System.out.println(set);
        }
    }

    Java Collection集合的ArrayList和HashSet怎么用

    ArrayList和HashSet的区别

    1.HashSet 是不重复的 而且是无序的! 唯一性保证. 重复对象equals方法返回为true ,重复对象hashCode方法返回相同的整数 HashSet其实就是一个HashMap,只是你只能通过Set接口操作这个HashMap的key部分

    2.ArrayList是可重复的 有序的 特点:查询效率高,增删效率低 轻量级 线程不安全。 arraylist:在数据的插入和删除方面速度不佳,但是在随意提取方面较快

    泛型

    泛型程序设计(generic programming)是程序设计语言的一种风格或范式。泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型。各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。

    一般用集合的时候都会用到泛型,泛型就是给集合加一个类型约束。 它可以是String、可以是Object 泛型不支持基本类型int,请使用包装器类型 Integer

    创建泛型:

    List<String> list = new ArrayList<>();

    这样这个集合里面只能加String类型。

    本文转载于:https://www.yisu.com/zixun/691617.html 如有侵犯,请联系zhengruancom@outlook.com删除。
    免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

    热门关注