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

Java集合

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

Java集合

一 、Java集合框架 简略框架图 二、单值集合:Collection接口

常用子接口包括 List(80%)和Set(20%)
一般仅在需要用到排序的的时 排序 候才会用到Set集合,普通集合一般采用List.

方法类型说 明
boolean add(E e)先集合中添加数据
void clear清空集合
Boolean contains(Object o)判断一个元素是否存在
iterator < E > iterator()为Iterator 接口实例化
Boolean remove(Object o)删除元素
int size()获取元素的个数
Object [ ] toArray()将集合转换为数组对象输出
List子接

特点:

	1.允许重复对象存在
	2.可以有多个Null值

List 子接口核心类:ArraryList,linkList 和 Vetcor 三个。其中Vetcor 是最早的集合类,目前最常用的是ArraryList。

方法原型说 明
E get(int index)获取指定索引位置上的对象
E set( int index ,E element修改指定索引位置上的对象
Listiterator< E > listiterator()为listiterator接口实例化
ArrayList类(重点)

ArrayList类的底层是使用类似于数组的形式来管理数据。数组是容量固定的,而ArrayList是动态扩容的。ArrayList的最大特征是查询效率高。

  ArrayList list = new ArrayList<>();
        list.add("hello");
        list.add("hello");//允许重复值
        list.add(null);
        list.add(null);//可以有多个null

        System.out.println("集合中的元素:");
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        list.set(2, "hello world");//修改数据
        list.remove(3);//删除数据
        list.size();//获取集合中数据的个数
        list.contains("hello");// 返回值boolean,查看list集合中时候含有"hello"数据
        list.clear();//清除数据
linkedList

linkedList底层使用双向循环链表实现,进行数据的插入和删除效率就比ArrayList高

  linkedList list = new linkedList<>();
        list.add("hello");
        list.add("hello");//允许重复值
        list.add(null);
        list.add(null);//可以有多个null

        System.out.println("集合中的元素:");
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        list.set(2, "hello world");//修改数据
        list.remove(3);//删除数据
        list.size();//获取集合中数据的个数
        list.contains("hello");// 返回值boolean,查看list集合中时候含有"hello"数据
        list.clear();//清除数据
Vetcor(几乎用不到)

Vetcor最早实现动态数组功能的类,功能和ArrarList基本一致。唯一不同的是:Vetcor是 同步的,线程安全的,而ArraryList,linkList都是异步的,线程非安全的。Vetcor的性能比ArrarList要差。

Set接口及其实现类

特点:

	1.不允许重复对象存在
	2.最多允许一个	Null

常用的实现类:HashSet(最常用) ,linkedSet ,TreeSet

如果要求消除重复,这个类型就必须要重写equals()方法和hashCode()方法。如果要实现自动排序,这个类型就必须要实现Comparable接口等等。

HashSet

HashSet按照hash算法来存储和访问即合理的元素,因此拥有很好的存取和查找功能。
因为HashSet是通过计算得到存放的位置的,所以集合内的数据是没有确定顺序的。

三、对值结合:Map接口

Map里的一个元素由两部分组成,key和value,一个Map集合和Lst集合一样,也有很多元素


在这里插入图片描述

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/340942.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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