2021.12.9学习记录

一、HashSet集合

HashSet集合,是Set接口下面的一个具体实现类,在HashSet里面的具体实现是靠HashMap,

在HashSet内部,是一个hash函数(内部存储方式是一个数组,在数组的每个位置又有一个链表来存储)

在HashSet集合里面的数据,可以包含NULL,但是不能包含重复的元素,判定不能重复的元素是因为内部有两个比较方法

1)hashcode方法:判断两个对象的hashcode值是否相等(内部是一个算法,主要是判定位置是否相同),如果位置不相同,则判定为不重复元素,否则就进行下一步判断

2)equals方法:判断两个数据类型以及值是否相同,不相同则不是重复元素,否则为重复元素

二、TreeSet与LinkHashSet

1、TreeSet也是Set下面的一个具体实现类,其内部内容依靠TreeMap本地方法实现

目的是为了让集合里的元素进行有序排序,或者按照比较器进行排序,内部是基于二叉树排序

2、LinkHashSet是Set下的具体实现类,基于HashSet实现

三、集合迭代器

迭代器主要是用于集合元素的遍历输出

1、Iterator:在集合里最常用

Iterator迭代器主要是用于List和sSet的迭代输出,其他的也可使用此方法

2、foreach:在所有遍历最常用

3、ListIterator:只能用于List迭代

4、Enumration

四、consumer与foreach接口

1、foreach中使用的较多的方法:

1) num.forEach((Integer int) ->{System.out.println(int)})

2) num.forEach(int ->{System.out.println(int)})

3) num.forEach( int ->System.out.println(int))

4) num.forEach(System.out::println)

5) num.forEach(new MyConsumer())\

注:上面前四个是使用的lambda表达是,第四个是新特性

2、consumer:当每个对象只使用一次时,此时的对象即可当作消费者使用

五、JDK8的四大函数接口(了解即可)

1、    Consumer接口:Consumer<T>:消费者接口

2、Fuction接口:Fuction<T,R>:表示接受一个参数并返回一个结果的函数

3、Supplier接口:Supplier<T>:代表结果供应商

4、Supplier接口:Supplier<T>:断言接口

六、JDK8Stream接口

类似于流操作,内部操作是一个高级的Iterator接口,对于集合里的元素遍历不是单个遍历,而是有以下操作

1、中间操作

对于集合中的元素,给出具体的操作,比如大写,删重复元素,等等然后集合里的每一个元素都执行此操作

2、结束操作

将所以的元素一次性迭代遍历输出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值