栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java——集合

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java——集合

文章目录
  • 1、集合框架的简述
  • 2、List集合
    • 2.1、ArrayList实现类
    • 2.2、linkedList实现了类
  • 3、Set集合
  • 4、Map集合框架
  • 5、[jdk1.8中文api](https://blog.csdn.net/qq_45042462/article/details/114950677)

1、集合框架的简述
  • Java集合框架提供了一套性能优良、使用方便的接口和类,它们为于java.util包中。存放在集合中的数据,被称为元素(element)。
  • 集合框架:
    • Collection接口存储一组不唯一,无序的对象;
    • List接口存储一组不唯一,有序(索引顺序)的对象;
    • Set接口存储一组唯一,无序的对象;
    • Map接口存储一组键值对象,提供key到value的映射;
      • key 唯一 无序
      • value 不唯一 无序
2、List集合

List集合的主要实现类有ArrayList和linkedList,分别是数据结构中顺序表和链表的实现。另外还包括栈和队列的实现类:Deque和Queue。

  • List
    • 特点:有序,不唯一
  • ArrayList
    • 在内存中分配连续的空间,实现了长度可变的数组;
    • 有点:遍历元素和随机访问效率比较高;
    • 缺点:添加和删除需大量移动元素效率低,按照内容查询效率低;
  • linkedList
    • 采用双向链表存储方式;
    • 缺点:遍历和随机访问元素效率低下;
    • 优点:插入、删除元素效率比较高(前提要低效率查询)
2.1、ArrayList实现类

代码演示

package Collection;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;


public class collection01 {
    public static void main(String[] args) {
        //创建一个集合对象
        List l1=new ArrayList();
        //添加元素
        l1.add(60);     //在末尾添加
        l1.add(70);
        l1.add(80);
        l1.add(1,50);   //指定的索引添加元素
        //获取指定索引的元素
        int element1=(int)l1.get(0);
        //遍历元素
        System.out.println(l1.toString());
        //for循环
        for (int i = 0; i < l1.size(); i++) {
            int element2=(int) l1.get(i);
            System.out.print(element2+",");
        }
        System.out.println();
        //for——each循环
        for(Object o:l1){
            System.out.print(o+",");
        }
        System.out.println();
        //Iterator迭代器
        Iterator i1= l1.iterator() ;
        while(i1.hasNext()){    //hasNext方法判断是否有下一个元素
            int element3=(int) i1.next();   //next方法取下一个元素的值
            System.out.print(element3+",");
        }
    }
}

运行结果

2.2、linkedList实现了类

代码演示

package Collection;

import java.util.Iterator;
import java.util.linkedList;

public class collection02 {
    public static void main(String[] args) {
        //创建一个集合对象
        linkedList l1=new linkedList();     //这里没有使用多态,因为linkedList有自己的方法
        //添加元素
        l1.add(60);     //在末尾添加
        l1.add(70);
        l1.add(80);
        l1.add(1,50);   //指定的索引添加元素
        //获取指定索引的元素
        int element1=(int)l1.get(0);
        //遍历元素
        System.out.println(l1.toString());
        //for循环
        for (int i = 0; i < l1.size(); i++) {
            int element2=(int) l1.get(i);
            System.out.print(element2+",");
        }
        System.out.println();
        //for——each循环
        for(Object o:l1){
            System.out.print(o+",");
        }
        System.out.println();
        //Iterator迭代器
        Iterator i1= l1.iterator() ;
        while(i1.hasNext()){    //hasNext方法判断是否有下一个元素
            int element3=(int) i1.next();   //next方法取下一个元素的值
            System.out.print(element3+",");
        }
    }
}

运行结果

3、Set集合
  • Set
    • 特点: 无序,唯一
  • HashSet
    • 采用Hashtable哈希表存储结构;
    • 优点:添加速度快,查询速度快,删除速度快;
    • 缺点:无序;
  • linkedHashSet
    • 采用哈希表存储结构,同时使用链表维护次序;
    • 有序(添加顺序) ;
  • TreeSet
    • 采用二叉树的存储结构;
    • 优点:有序,查询熟读比List快(按照内容查询);
    • 缺点:查询熟读没有HashSet快;
4、Map集合框架
  • Map
    • 特点: 存储的键值对映射关系,根据key可以找到value
  • HashSet
    • 采用Hashtable哈希表存储结构;
    • 优点:添加速度快,查询速度快,删除速度快;
    • 缺点:key无序;
  • linkedHashMap
    • 采用哈希表存储结构,同时使用链表维护次序;
    • 有序(添加顺序) ;
  • TreeMap
    • 采用二叉树的存储结构;
    • 优点:有序,查询熟读比List快(按照内容查询);
    • 缺点:查询熟读没有HashSet快;
5、jdk1.8中文api
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/490224.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号