Map、泛型

  1. Map

Map保存键值对 K V

  •  无序 key 不可重复 value 可重复
    
  • Map和Collection不一样.但基本操作是一样的

  • Map用来保存映射关系,

  •  比如 商品,商品的名称,产地,单价等属性,都是商品的属性,但是购买数量,就不是商品的属性,放到商品类中也不合适
    
  •  那么如何存储这个商品 购买的数量呢?  使用map,用商品作为key,购买数量作为value即可
    
  •  或者是一些统计操作,比如 现在有一个字符串 "ascsncjkashdiqhiehiasgdgasddcasi" , 需求是 统计每个字符出现的个数
    
  •  字符作为key,次数作为value,
    

    常用方法
    1map不能直接遍历,需要转换为集合之后进行遍历

遍历

public static void main(String[] args) {
		HashMap map = new HashMap();
		map.put("a", 1);
		map.put("b", 2);
		map.put("c", 3);
		map.put("d", 4);
		// values : 获取所有的value 返回一个collection
		Collection values = map.values();
		for (Object object : values) {
			System.out.println(object);
		}
		System.out.println("----");
		// keySet : 获取所有的key,返回Set
		Set keys = map.keySet();
		for (Object key : keys) {
			// 获取value
			Object value = map.get(key);
			System.out.println(key+" : "+value);
		}
		System.out.println("=======");
		// entrySet : entry对象中可以存储key和value,我们只需要保存entry 就等于把kv都存储了
		// 把map中的kv 封装到entry对象中,并以set方式返回
		Set entrys = map.entrySet();
		for (Object object : entrys) {
			Entry entry = (Entry) object;
			System.out.println(entry.getKey()+" : "+entry.getValue());
		}
	}

Properties 一个特殊的map , 键和值 比较都是字符串

TreeMap
添加的元素必须按照某个规则进行排序

  •  1 被添加的元素 实现 Comparable 
    
  •  2 单独提供一个 Comparator 比较器类
    

泛型

类型检查,在编译过程中检查类型是否匹配
*

  • 泛型之只能是引用类型,不能写基本类型
  • 优点 : 统一了数据类型,减少了强制类型转换,使用方便
  • 缺点 : 统一了数据类型,只能保存单一类型的数据
  • E : Element , K : Key , V : Value , T : Type
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值