java集合之重复数据

一、java为什么要有集合?

        在内存中申请一块空间用来存储数据,在Java中集合就是替换掉定长的数组的一种引用数据类型。数组长度固定,定义长了造成内存空间的浪费,定义短了不够用。集合大小可以变,用多少空间拿多少空间。数组可以存储基本数据类型和引用数据类型,集合中只能存储引用数据类型(存储的为对象的内存地址),若是简单的int,它会自动装箱成Integer如:list.add(100);//为自动装箱,100为Integer包装的。

二、java为什么要有不一样的集合?

        在java中每一个不同的集合,底层会对应不同的数据结构。往不同的集合中存储元素,等于将数据放到了不同的数据结构当中。什么是数据结构?数据存储的结构就是数据结构。不同的数据结构,数据存储方式不同。

三、java有哪些数据结构的集合?

        1、单列集合List,可以重复:ArrayList/LinkedList
        List是有序、可重复的单列集合,集合中的每个元素都有对应的顺序索引,我们可以通过该索引来访问指定位置上的集合元素。
        2、单列集合Set不可重复:HashSet/TreeSet
        Set系列集合特点是无序、不重复、无索引。
        单列集合接口List和Set都继承了Collection接口。
        3、双列集合:interface Map: K(key)键 ,V(value)值,用来存储键值对的集合,将键映射到值的对象,不能出现重复的键,每个键最多可以映射到一个值。
        Map和Collection没有继承关系。 Map集合以key和value的方式存储数据:键值对key和value都是引用数据类型。  key和value都是存储对象的内存地址。key起到主导的地位,value是key的一个附属品。

四、如何向Map集合中存储重复数据作为键?

        可以在遍历重复数据时将键加上(+)下标索引index,使其不再重复再存储到Map集合中。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值