单列集合的总结

Collection 单列集合的根接口

      List 特点 有序 有索引 元素可重复

          ArrayList

              底层数据是数组 查询快 增删慢

              线程不安全 效率高

          LinkedList

              底层数据是链表 查询慢 增删快

              线程不安全 效率高

          Vector

              底层数据是数组 查询快 增删慢

              线程安全 效率低

      Set  特点 元素唯一

          HashSet

              底层数据是哈希表 查询和增删都比较快

              无序  唯一

             先比较hashCode方法

              如果hashCode不同 将元素添加到集合

              如果hashCode相同 继续比较equals方法

              相同 不添加

              不同 添加

        LinkedHashSet

              底层数据是链表+哈希表

              有序 唯一

              链表来保证有序  哈希表来保证唯一

              如果hashCode不同 将元素添加到集合

              如果hashCode相同 继续比较equals方法

               相同 不添加

              不同 添加

        迭代器

              增强for循环

原文地址:https://www.cnblogs.com/JunQiang-Ma/p/9964938.html

时间: 2024-10-30 06:07:30

单列集合的总结的相关文章

单列集合的框架简介

集合概述 集合:集合是java中提供的一种容器,可以用来存储多个数据. 集合和数组既然都是容器,它们有啥区别呢? 数组的长度是固定的.集合的长度是可变的. 数组中存储的是同一类型的元素,可以存储基本数据类型值.集合存储的都是对象.而且对象的类型可以不一致.在开发中一般当对象多的时候,使用集合进行存储. 集合框架 集合按照其存储结构可以分为两大类, 单列集合java.util.Collection 双列集合java.util.Map Collection:单列集合类的根接口,集合本身是一个工具,它

获取单列集合,双列集合,数组的Stream流对象以及简单操作

获取流对象 获取单列集合,双列集合,数组的流对象 单列集合获取流对象: 1.java.util.Collection接口中加入了default方法stream()获取流对象,因此其所有实现类均可通过此方式获取流. public class StreamTest01 { List<String> list = new ArrayList<>(); Stream<String> stream1 = list.stream(); Set<String> set =

单列集合

一.集合和数组既然都是容器,它们的区别: 1. 数组的长度是固定的.集合的长度是可变的 2. 数组中存储的是同一类型的元素,可以存储基本数据类型值.集合存储的都是对象.而且对象的类型可以不一致.在开发中一般当对象多的时候,使用集合进行存储 二.集合按照其存储结构可以分为两大类,分别是单列集合java.util.Collection和双列集合java.util.Map Collection:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是java.util.Lis

Collection单列集合中的常用实现类

Collection 集合层次的根接口 List 有序 有索引 可以重复 ArrayList 底层数据结构是数组 查询快 增删快 线程不安全 效率高 LinkedList 底层数据结构是链表 查询慢 增删快 线程不安全 效率高 Vector 底层数据是数组 查询和增删介于前两者之间 线程安全 效率低 Set 唯一 在调用add()方法时: 在底层中以map的形式存储,存储时调用元素的hashCode(),equals(),map会自动比较key值(就是hash值) 先比较hash值 如果对象的h

Collection单列集合 Map双列集合

Map集合:该集合存储键值对,一对一对往里存.而且要保证键的唯一性. 1.添加 put(K key, V value) putAll(Map<? extends K,? extends V> m) 2.删除 clear() remove(Object key) 3.判断 containsKey(Object key) containsValue(Object value) isEmpty() 4.获取 get(Object key) :获取值 size() values() entrySet(

java之Set接口(单列集合)

Set接口概述 java.util.Set 接口和 java.util.List 接口一样,同样继承自 Collection 接口,它与 Collection 接口中的方法基本一致,并没有对 Collection 接口进行功能上的扩充,只是比 Collection 接口更加严格了.与 List 接口不同的是, Set 接口中元素无序,并且都会以某种规则保证存入的元素不出现重复.Set 集合有多个子类,这里我们介绍其中的 java.util.HashSet . java.util.LinkedHa

单列集合List

List的常用子类 如果要执行大量的增删操作选择LinkedList,如果只是查询的话用ArrayList ArrayList集合 有序存储,继承了List的特性,平时常用来查询,遍历数据 底层是数组结构,所以增删慢,查询快,效率高意味着线程不安全 LinkedList集合 有序存储,继承了List的特性 底层是链表结构,所以增删快,查询慢,同样的效率高,但是线程不安全 LinkedList是一个双向链表 特有方法 public void addFirst(E e) :将指定元素插入此列表的开头

集合单列--Colletion

集合 学习集合的目标: 会使用集合存储数据 会遍历集合,把数据取出来 掌握每种集合的特性 集合和数组的区别 数组的长度是固定的.集合的长度是可变的. 数组中存储的是同一类型的元素,可以存储基本数据类型值.集合存储的都是对象.而且对象的类型可以不一致,在开发中一般当对象多的时候使用集合进行存储. 集合框架 JAVASE提供了满足各种需求的API,在使用这些API前,先了解其继承与接口操作架构,才能了解何时采用哪个类,以及类之间如何彼此合作,从而达到灵活应用. 集合按照其存储结构可以分为两,分别是单

Java 之集合

collection(单列集合) List(有序,可重复) ArrayList     底层数据结构是数组,查询快,增删慢,线程不安全,效率高 Vector     底层数据结构是数组,查询快,增删慢,线程安全,效率低 LinkedList  底层数据结构是链表,查询慢,增删快,线程不安全,效率高 Set(无序,唯一) HashSet   底层数据结构是哈希表,依赖hashCode()和equals() 执行顺序:判断hashCode()是否相同,相同继续执行equals(),返回true不添加