三大集合--Map集合 -- 详细完整加案例分析

文章详细介绍了Map集合的特点,包括键值对存储和不继承Collection接口,以及遍历方式如entrySet和KeySet。接着通过案例展示了如何统计字符串中字符出现次数,解释了泛型的作用,提供了无泛型和使用泛型的对比示例。最后讨论了集合框架工具类Arrays和Collections在排序中的应用。
摘要由CSDN通过智能技术生成

目录

一.Map集合的特点

1.是采用键值对的形式储存

2.map集合不继承collection接口(而list集合和set集合继承,这也是其与二者的区    别之一)

3.map集合的遍历方式

             1.   entrySet

             2.   KeySet

二.案例+步骤

(给一串数字/字符,统计出现相同的数字/字符,有多少个)

 三.泛型(用求奇数/偶数来举例)

3.1举例

     3.1.1.首先,不用泛型

     3.1.2.其次:是用泛型

3.2泛型的运用场景

四.集合框架工具类(排序)

Arrays

Collections

4.1 Arrays

4.2 Collections

        4.2.1  第一种方法(简单字符串排序)

         4.2.2  第二种(对象多条件排序)


一.Map集合的特点

  • 是采用键值对的形式储存

  • map集合不继承collection接口(而list集合和set集合继承,这也是其与二者的区    别之一)

  • map集合的遍历方式

             1.   entrySet

             2.   KeySet

        首先是集合都有的特点增删改查

         注意:修改在本质上是覆盖

        查询有两种遍历方式,分别是 entrySet 和 KeySet

         再第二种entrySet 方式中,如果没有加泛型则需要强转

输出结果为:

 

二.案例+步骤

(给一串数字/字符,统计出现相同的数字/字符,有多少个)

步骤:

  1. 先获取所给定的所有字符串/数字
  2. 定义一个Map集合来保存数据
  3. 将字符进行遍历
  4. 字符作为Map集合的Key,然后再Map集合中找该Key对应的值是否存在   ,  如果存在则Key对应的值就加 1 进行覆盖,如果不存在则就默认为 1
  5. 遍历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 比较器排序差不多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值