前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >第十四届蓝桥杯集训——HashMap(无序)与TreeMap(有序)

第十四届蓝桥杯集训——HashMap(无序)与TreeMap(有序)

作者头像
红目香薰
发布2023-01-13 09:59:51
1810
发布2023-01-13 09:59:51
举报
文章被收录于专栏:CSDNToQQCodeCSDNToQQCode

第十四届蓝桥杯集训——HashMap(无序)与TreeMap(有序)

目录

第十四届蓝桥杯集训——HashMap(无序)与TreeMap(有序)

HashMap

包装类泛型约束

HashMap无序操作

TreeMap

TreeMap有序操作

HashMap

  • HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。
  • HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。
  • HashMap 是无序的,即不会记录插入的顺序。
  • HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口。

HashMap 的 key 与 value 类型可以相同也可以不同,可以是字符串(String)类型的 key 和 value,也可以是整型(Integer)的 key 和字符串(String)类型的 value。

包装类泛型约束

map也是支持泛型的,这个Key和Value泛型除了基本数据类型外还有【Number】、【Object】、

基本类型

引用类型

boolean

Boolean

byte

Byte

short

Short

int

Integer

long

Long

float

Float

double

Double

char

Character

  • E - Element (在集合中使用,因为集合中存放的是元素)
  • T - Type(Java 类)
  • K - Key(键)
  • V - Value(值)
  • N - Number(数值类型)
  •  - 表示不确定的 java 类型

HashMap无序操作

代码语言:javascript
复制
package com.item.action;

import java.util.HashMap;
import java.util.Set;

public class Demo3 {

	public static void main(String[] args) {
		HashMap<String, Object> map = new HashMap<String, Object>();
        // 添加键值对
		map.put("admin", "管理员");
		map.put("zhangsan", "张三");
		map.put("lisi", "李四");
		map.put("wangwu", "王五");
		map.put("zhaoliu", "赵六");
        System.out.println(map);
        // 修改
        map.put("admin", "管理员的值被修改");
        System.out.println(map);
        //删除
        map.remove("zhangsan");
        System.out.println(map);
        //根据key获取value
        System.out.println(map.get("zhangsan"));
        System.out.println(map.get("lisi"));
        //返回set
        Set<String> keySet = map.keySet();
        System.out.println(keySet);
        //遍历
        for (String s : keySet) {
			System.out.print(map.get(s)+",");
		}
	}

}

显示效果:

TreeMap

TreeMap是序的key-value集合,内部是通过红-黑树实现的,支持序列化 。

TreeMap有序操作

代码语言:javascript
复制
package com.item.action;

import java.util.Set;
import java.util.TreeMap;

public class Demo3 {

	public static void main(String[] args) {
		TreeMap<String, Object> map = new TreeMap<String, Object>();
        // 添加键值对
		map.put("admin", "管理员");
		map.put("zhangsan", "张三");
		map.put("lisi", "李四");
		map.put("wangwu", "王五");
		map.put("zhaoliu", "赵六");
        System.out.println(map);
        // 修改
        map.put("admin", "管理员的值被修改");
        System.out.println(map);
        //删除
        map.remove("zhangsan");
        System.out.println(map);
        //根据key获取value
        System.out.println(map.get("zhangsan"));
        System.out.println(map.get("lisi"));
        //返回set
        Set<String> keySet = map.keySet();
        System.out.println(keySet);
        //遍历
        for (String s : keySet) {
			System.out.print(map.get(s)+",");
		}
	}

}

输出效果:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-01-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第十四届蓝桥杯集训——HashMap(无序)与TreeMap(有序)
  • HashMap
  • 包装类泛型约束
  • HashMap无序操作
  • TreeMap
  • TreeMap有序操作
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档