集合的顶级理解(刨析JAVA中的数据结构)

集合

不如先看看这两个开胃小菜吧,这是我整理的两份新鲜的食材:
Collection详谈:Collection详谈
Map详谈:Map详谈
在这里插入图片描述

集合和数组

集合和数组的区别

  • 数组既可以存储基本数据类型,又可以存储引用数据类型,基本数据类型存储的是值,引用数据类型存储的是地址值。
  • 集合只能存储引用数据类型(对象)。集合也能存储基本数据类型(有点矛盾,看后句),但是在存储的时候会自动装箱变成对象。
  • 数组长度是固定的,不能自动增长。
  • 集合的长度是可变的,可以根据元素的增长而增长。
  • 数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。

集合和数组选用

  • 如果元素个数是固定的推荐用数组,效率高。
  • 如果元素个数不是固定的推荐用集合.

集合的分类

三个高频使用接口

Collection接口 Map接口 Iterator接口

所有种类

Collection接口:  									   单列集合的顶层接口	
	List接口:    									   有序的子接口  是元素有序、元素可重复。
			 Vetor集合(数组结构:单线程,都慢)
			 ArrayList集合(数组结构:查询快,增删慢),
			 LinkLIst集合(链表结构:查询慢,增删快)
			 Set集合: 	   无序的子接口  特点是元素无序,而且不可重复
				TreeSet集合,
				HashSet集合(哈希表结构:查询快)
				LinkedHashSet
	Map     											双列集合的顶层接口
		HashMap 										哈希表存储
		LikedHashMap

在这里插入图片描述

collecions类

常用方法:

public static <T> boolean addAll(Collection<T> c, T... elements) :往集合中添加一
些元素。
public static void shuffle(List<?> list) 打乱顺序 :打乱集合顺序。
public static <T> void sort(List<T> list) :将集合中元素按照默认规则排序。
public static <T> void sort(List<T> list,Comparator<? super T> ) :将集合中元素按
照指定规则排序。

实现:

public static void main(String[] args) {
        ArrayList<Integer> arrayList =new ArrayList<>();
        /**
         * 原来写法
         */
        arrayList.add(12);
        arrayList.add(13);
        arrayList.add(14);
        Collections.addAll(arrayList,1,2,3,4);
        System.out.println(arrayList);
        //排序
        Collections.sort(arrayList);
        System.out.println(arrayList);
    }

在这里插入图片描述
废话时间:

如果客官觉得食用合适可不可以给一个免费的赞!谢谢谢了!慢走客官!建议打包收藏,下次再来。店小二QQ:309021573,欢迎骚扰!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我想去拉萨。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值