“21天好习惯”第一期 - 2

这篇博客介绍了Java中的核心数据结构,如哈希表(HashSet、TreeSet)、队列(Queue、PriorityQueue、Deque)、Map(HashMap、LinkedHashMap、TreeMap)以及泛型的应用。还讲解了集合的操作,如排序、查找、替换,并提到了Arrays和Collection工具类的实用方法。此外,文章还涵盖了JDK5.0引入的泛型特性,增强了代码的安全性。
摘要由CSDN通过智能技术生成

学习Java第四天

这里主要关于哈希表,队列,栈,树,排序,包括各个数据结构的插入、删除、修改、查找等操作

一、Set接口

Set集合中的元素是无序的,不可重复的

1.HashSet

根据对象的哈希值来确定元素在集合中的存储位置,且集合中的元素可以为null

2.TreeSet

底层用二叉树实现元素存储,可以对元素进行排序

1.自然排序

使用Comparable接口,定义一个compareTo(Object o)方法,对对象大小进行比较

obj1.compareTo(obj2) 返回0,代表两对象相等,返回正整数,代表obj1 > obj2,返回负整数,代表obj1 < obj2

2.定制排序

使用Comparator接口,定义一个int Compare(T t1, T t2)方法,可以比较t1,t2大小

 

 二.Queue接口

模拟队列(FIFO原则),队列不允许随机访问

进队 boolean offer(Object e)操作

出队 Object peek() 出队并保留

出队 Object poll()操作 出队并删除

1.PriorityQueue实现类

非绝对标准队列实现,保存队列时会按队列元素的大小重新排序

2.Deque接口与ArrayDeque实现类

Deque可以实现栈,该类包含pop出栈和push入栈两个方法 

三、Map接口

1.HashMap集合

Map接口与Collection接口并列存在,存储键值对(key-value)形式的元素,描述了一种映射关系

key和value可以是任何引用类型的数据

size()用来表示map接口的长度

Object get(Object key) 返回指定键所映射的值

 2.LinkedHashMap集合

维护遍历的顺序

3.TreeMap集合

可以对键值对进行排序

 

四、JDK5.0新特性——泛型

解决数据类型的安全问题

在类声明时通过一个标识,表示类中某个属性的类型或者是某个方法的返回值及参数类型 

 五、Collection工具类

1.排序操作

1.reverse(List list)

2.shuffle (List list)

3.sort(List list)

4.swap(List list, int i, int j)

 2.查找、替换操作

1.max(Collection coll) 返回coll集合中最大元素

2.min(Collection coll) 返回coll集合中最小元素

3.replaceAll(List list, Object o1, Object o2) 用o2元素替换所有的o1元素

4.frequency(Collection coll,Object o) 返回coll集合中,o元素出现的次数

5.binarySearch(List list,Object o) 使用二分法搜索o,前提是集合是有序的

 六、Arrays工具类

1.sort(Object[] arr)

2.binarySearch(Object[] arr, Object o)

3.fill(Object[] arr,Object o) 将所有元素都替换为o元素

4.toString(Object[] arr) 将数组转换为字符串

  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值