欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java中集合框架都有什么?

程序员文章站 2024-03-08 15:50:59
...

Java集合框架图

Java中集合框架都有什么?

虚线框表示接口

实线框表示实现类 

Java集合框架共有三大类接口:List、Set、Map

 

一、List接口

List接口存储一组不唯一,有序(插入顺序)的对象

ArrayList类实现了长度可变的数组,在内存中分配连续的空间。遍历元素的随机访问元素的效率比较高

LinkedList类采用链表存储方式。插入、删除元素时效率比较高

ArrayList常用方法

定义一个ArrayList集合:List list = new ArrayList();

Java中集合框架都有什么?

Java中集合框架都有什么?

List list = new ArrayList();   //定义一个ArrayList集合类
        
list.add(1);    //将元素添加到集合中
        
list.add(1, 2);     //将元素 2 插入到集合的 下标为 1 的位置
        
list.get(1);    //返回集合中索引为 1 的元素
        
list.indexOf(2);    //返回元素 2 在集合中出现的索引
        
list.set(1, 3);        //将下标为 1 的元素替换为 3
        
list.remove(1);        //删除并返回 下标为 1 的元素
        
list.isEmpty();     // 判断 list集合是否为空    返回的是boolean类型
        
list.contains(3);    // 判断list集合中是否包含 3  返回的是boolean类型

LinkedList常用方法

定义一个LinkedList : LinkedList list = new LinkedList();

Java中集合框架都有什么?

LinkedList list = new LinkedList();  //定义一个 LinkedList集合

list.addFirst(1);   //将给定元素插入当前集合头部

list.addLast(5);     //将给定元素插入当前集合尾部

list.getFirst();    //获取当前集合的第一个元素

list.getLast();       //获取当前集合的最后一个元素

list.removeFirst();    //移除并返回当前集合的第一个元素

list.removeLast();     //移除并返回当前集合的最后一个元素

二、Set接口

set接口存储一组唯一,无序的对象

HashSet 是Set接口常用的实现类

HashSet允许集合元素值为null

操作数据的方法与List类似,Set接口不存在get()方法

定义一个Set集合 : Set set = new HashSet();

三、Map接口

HashMap是Map接口最常见的实现类

存储一组成对的键 - 值对象,提供key(键)到 value(值)的映射,通过key来索引

key不允许重复

value允许重复

添加的对象将转换为Object类型

Map常用方法

 定义一个HashMap 集合 : HashMap map = new HashMap(); 

Java中集合框架都有什么?

Map map = new HashMap();     //定义一个HashMap 集合

map.put(1, "编号");        //将互相关联的一个关键字(key)与一个值(value)放入该集合
               
map.remove(1);            //将 key值为 1的元素移除
                
map.get(1);                //获取与关键字key相关的值。如果该键不关联任何非null值,则返回null
                
map.containsKey(1);     //判断集合中是否存在关键字key
                
map.containsValue("11");     //判断集合中是否存在值value

map.isEmpty();        //判断集合中是否存在元素
                
map.clear();         //清楚集合中的所有元素
                
map.size();            //返回集合中元素的数量
                
Set set1 =map.keySet();    //获取所有键key的集合
                 
Collection set2 =map.values();        //获取所有值value的集合

遍历HashMap:

keySet()方法获取键的集合

values()方法获取值得集合

Map map = new HashMap();  //定义一个HashMap 集合

//循环给map集合赋值
for(int i = 0;i<=5;i++){
    map.put(i, i*5);
   }

//遍历map集合
Set sets = map.keySet();

//foreach循环
    for(Object o : sets){
      System.out.println(o +"  "+ map.get(o));
   }

打印结果为:

    0 0
    1 5
    2 10
    3 15
    4 20
    5 25

四、Collection接口和Collections类

Collection接口是最基本的容器接口,继承至Iterable接口,允许元素重复不唯一,可以无序

Collection和Collections不同,前者是集合的接口,后者是集合的操作类

Collections操作类提供的静态方法
sort():排序
binarySearch():查找
fill():替换

相关标签: Java高级特性