Java Collection、Map集合总结

1.Java中的Collection集合总结

Collection

  |---List(存储有序,可重复)

    |---ArrayList

      底层数据结构是数组,查询快,增删慢。

      线程不安全、效率高

    |---Vector

      底层数据结构是数组,查询快,增删慢。

      线程安全、效率低。

    |---LinkedList

      底层数据结构是链表,查询慢,增删快。

      线程不安全,效率高

  |---Set(存储无序,元素唯一)

    |---HashSet

      底层数据结构是哈希表。

      依赖hashCode()和equals()两个方法进行保证元素唯一性,开发中使用开发工具自动生成就好。

      |---LinkedHashSet

        底层数据结构是链表和哈希表

        链表保证元素有序

        哈希表保证元素唯一

    |---TreeSet

      底层数据结构是红黑树。

      如何保证元素排序呢?自然排序或者比较器排序。

      如何保证元素唯一呢?根据比较结果是否为0来进行判断。

Map

  |---HashMap

    底层是数组链表,使用hash算法来保证元素存储位置

      |---LinkedHashMap

  |---TreeMap

    底层是红黑树实现。

集合中常见的数据结构总结

  ArrayXxx:底层数据结构是数组,查询快,增删慢
  LinkedXxx:底层数据结构是链表,查询慢,增删快
  HashXxx:底层数据结构是哈希表。依赖两个方法:hashCode()和equals()
  TreeXxx:底层数据结构是二叉树。两种方式排序:自然排序和比较器排序

Collection和Collections的区别?

  1.Collection 是单列集合的顶层接口,有两个子接口List和Set

  2.Collections 是针对集合进行操作的工具类,可以对集合进行排序和查找等

时间: 2024-10-13 01:41:49

Java Collection、Map集合总结的相关文章

Java Collection(集合)简析

类集:在C++中叫做容器(container),而在Java中叫做类集 Collection(类集):最基本的集合接口,一个Collection代表一组Object集合. Collection(类集)特形: 1.  元素(Elements)存放: 可以存放相同的Elements: 不可以存放相同的Elements: 2. 元素(Elements)顺序: 有序: 无序: Collection(类集)优点: 程序处理对象组的方法标准化: 高性能:对基本类集(动态数组,链接表,树和散列表)的实现是高效

java基础 Map集合

集合 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下 Collection接口是集合的根接口,没有蹄冻这个接口的直接实现类,但是却又其让其被继承的长   生的两个接口就是set与list .Set中不能包含重复的元素.List是一个有序的集合 List 有序  可重复的 List里存放的对象是有序的,同时也是可以重复的,list 关注的是索引,拥有一系列和索引相关的方法,查询速度快 因为是会伴随这后面数据的移动,所有插入删除数据速度慢 Set 无序 不能重复 Set是无序的

Java遍历Map集合方法

package testMap; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; /**  * 循环遍历Map集合  *   * @author Administrator  *   */ pub

java中map集合的迭代

import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap { public static void main(String[] args) { Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "a"); map.put(2, "b

java之map集合

如果程序中存储了几百万个学生,而且经常需要使用学号来搜索某个学生,那么这个需求有效的数据结构就是Map.Map是一种依照键(key)存储元素的容器,键(key)很像下标,在List中下标是整数.在Map中键(key)可以使任意类型的对象.Map中不能有重复的键(Key),每个键(key)都有一个对应的值(value).一个键(key)和它对应的值构成map集合中的一个元素. Map中的元素是两个对象,一个对象作为键,一个对象作为值.键不可以重复,但是值可以重复. 看顶层共性方法找子类特有对象.

java中Map集合的理解

Map |--Hashtable:底层是哈希表数据结构,不可以存入null键null值.该集合是线程同步的.jdk1.0.效率低. |--HashMap:底层是哈希表数据结构,允许使用 null 值和 null 键,该集合是不同步的.将hashtable替代,jdk1.2.效率高. |--TreeMap:底层是二叉树数据结构.线程不同步.可以用于给map集合中的键进行排序. 和Set很像.其实大家,Set底层就是使用了Map集合. /* map集合的两种取出方式: 1,Set<k> keySe

Java 实现Map集合排序功能

第一步:Map中新增sort临时键 // 初始化Map集合 List<Map<String, String>> columns = new ArrayList<Map<String, String>>(); Map<String, String> c1 = new HashMap<String,String>(); c1.put("sort", "8"); c1.put("title&

c#中泛型集合directory和java中map集合对比

c#中directory的基本用法1.创建及初始化 Dictionary<int, string> myDictionary = new Dictionary<int, string>(); 2.添加元素 myDictionary.Add("C#",0); myDictionary.Add("C++",1); myDictionary.Add("C",2); myDictionary.Add("VB",

Java中map集合系列原理剖析

看了下JAVA里面有HashMap.Hashtable.HashSet三种hash集合的实现源码,这里总结下,理解错误的地方还望指正 HashMap和Hashtable的区别 HashSet和HashMap.Hashtable的区别 HashMap和Hashtable的实现原理 HashMap的简化实现MyHashMap HashMap和Hashtable的区别 两者最主要的区别在于Hashtable是线程安全,而HashMap则非线程安全Hashtable的实现方法里面都添加了synchron

Java List Map集合遍历方法

Map遍历 方法一 在for-each循环中使用entries来遍历 这是最常见的并且在大多数情况下也是最可取的遍历方式.在键值都需要时使用. [java] view plain copy Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println(&qu