java treemap截取_JAVA集合&&数组(三)——Map

JAVA集合&&数组(三)——Map

目录:

..........1、Map

Map接口定义的集合又称为查找表,用于储存所谓的‘key-value’映射对。Key不可以重复。

..........2、Map接口的实现类:

根据内部实现不同,Map接口有多种实现类,常用的有:

1) 内部为hash表实现的HashMap

2) 内部为排序二叉树实现的TreeMap

..........3、Map接口定义的方法有

1) put

2) get

3) remove

4) constainsKey

..........4、HashMap实现原理

一、Map

7992ffda55f0e582755bd20d37a451fb.png

Map用于保存具有映射关系的数据,保存着两组值,一组值用于保存Map里的key,一组值用于保存map里的value。

1、key和value都可以是任何类型的数据;

2、key不能重复,同一个Map中的任何两个key通过equsls方法比较总是返回true;

3、所有key放在一起构成一个set集合(所有key没有顺序,不能重复)

二、Map接口实现类:

HashMap

LinkedHashMap

SortMap

TreeMap

EnumMap

三、Map接口定义的的方法

1、向Map中存放、获取、删除元素

存放元素:map.put();

获取元素:map.get();

删除元素:map.remove();

查询是否包含某个key:map.constainsKey();

package cn.qiuuuu.map;

import java.util.HashMap;

import java.util.Map;

import java.util.TreeMap;

public class MapExercise {

public static void main(String[] args) {

Map mapHash=new HashMap();

Map mapTree=new TreeMap();

//向mapHash中存入值

mapHash.put("ZhangSan", 90);

mapHash.put("LiSi", 100);

mapHash.put("WangWu", 80);

mapHash.put("XiaoLi", 60);

//输出mapHash中的内容

System.out.println(mapHash);

//

mapHash.put("xiaoLi", 77);

System.out.println(mapHash);

mapHash.put("wuwu", 60);

System.out.println(mapHash);

mapHash.put("XiaoLi", 77);

System.out.println(mapHash);

//输出LiSi的成绩

int math=mapHash.get("LiSi");

System.out.println("LiSi的数学成绩为:"+math);

//删除与LiSi相关的信息

mapHash.remove("LiSi");

System.out.println(mapHash);

//是否包含某个Key

boolean constain=mapHash.containsKey("ZhangSan");

System.out.println(constain);

}

}

输出结果为:

bdb1c3c6214567ab77de54f6a4fbb461.png

2、遍历Map集合的四种方式

通过key遍历

通过entry实例遍历

通过value遍历

Map map = new HashMap();

map.put("chinese", 100);

map.put("math", 99);

map.put("english", 100);

map.put("PE", 90);

// 1.通过key遍历

for (String key : map.keySet()) {

Integer value = map.get(key);

System.out.println(key + " : " + value + "分");

}

// 2.通过entry遍历

for (Entry entry : map.entrySet()) {

String key = entry.getKey();

int value = entry.getValue();

System.out.println(key + " : " + value+ "分");

}

// 3.通过value遍历

for (Integer value : map.values()) {

System.out.println(value+ "分");

}

四、HampMap实现原理

c263a41d5b595abbde64c909ce92703e.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值