一.Map集合的特点
- 是采用键值对的形式储存
- map集合不继承collection接口(而list集合和set集合继承,这也是其与二者的区 别之一)
- map集合的遍历方式
1. entrySet
2. KeySet
首先是集合都有的特点增删改查
注意:修改在本质上是覆盖
查询有两种遍历方式,分别是 entrySet 和 KeySet
再第二种entrySet 方式中,如果没有加泛型则需要强转
输出结果为:
二.案例+步骤
(给一串数字/字符,统计出现相同的数字/字符,有多少个)
步骤:
- 先获取所给定的所有字符串/数字
- 定义一个Map集合来保存数据
- 将字符进行遍历
- 以字符作为Map集合的Key,然后再Map集合中找该Key对应的值是否存在 , 如果存在则Key对应的值就加 1 进行覆盖,如果不存在则就默认为 1
- 遍历Map集合
最后输出结果为:
三.泛型(用求奇数/偶数来举例)
泛型就是起到一个限制作用,其规定了该集合中保存的数据类型,它最大的好处就是将运行产生的异常转变为编译时的报错,提高了工作的效率和代码的健壮性
3.1举例
3.1.1.首先,不用泛型
它不会报错,但会在运行是产生异常(String类型不能转变成Integer类型)
3.1.2.其次:是用泛型
可以看到,其再运行是则已报错!!!
3.2泛型的运用场景
在我们三层架构中,我们可以应用泛型来减少我们的代码量
在我们俩个类都要继承YZcommon时为了区分,则采用泛型
class YZcommon<T> { public List<T> del(T t) { System.out.println(123); return null; } } class User { } class YinZi { } class userDao extends YZcommon<User> { public List<User> del(User u) { System.out.println(123); return null; } } class YinZiDao extends YZcommon<YinZi> { public List<YinZi> del(YinZi y) { System.out.println(123); return null; } }
四.集合框架工具类(排序)
- Arrays
- Collections
4.1 Arrays
4.2 Collections
4.2.1 第一种方法(简单字符串排序)
4.2.2 第二种(对象多条件排序)
第二种就比第一种要好一些,它跟Set集合的TreeSet 比较器排序差不多