保持原始存入顺序的Map实现类

LinkedHashMap
### Java中的Map接口 #### 接口概述 `java.util.Map<K,V>` 是一种键值对映射的数据结构,在Java集合框架中占据重要位置。此接口不继承自 `Collection` 接口,因此具有独特的操作方式[^1]。 #### 主要属性与方法 - **泛型参数** - `<K, V>` 表示键和值的类型。 - **常用方法** - `V put(K key, V value)`:将指定的键/值对存入map中;如果该key已经存在,则替换旧value并返回之。 - `V get(Object key)`:通过给定的key获取对应的value;若不存在则返回null。 - `boolean containsKey(Object key)` 和 `boolean containsValue(Object value)` :分别用于判断是否存在特定的key或value。 - `void clear()`:清空所有的条目。 - `Set<Map.Entry<K,V>> entrySet()`:获得所有entry组成的set视图。 - `int size()`:得到当前存储了多少个kv对。 - `boolean isEmpty()`:测试是否为空容器。 - `Set<K> keySet()`:取得全部keys构成的一个不可变set集。 - `Collection<V> values()`:收集values形成collection对象。 #### 实现类简介 常见的实现有: - `HashMap`: 基于哈希表实现,默认允许null作为key/value。 - `LinkedHashMap`: 继承自HashMap保持插入顺序不变。 - `TreeMap`: 提供按键自然排序或者定制Comparator后的有序访问能力。 - `Hashtable`: 类似于HashMap但是线程安全,并且不允许任何null keys/values。 #### 示例代码展示 下面给出一段简单的例子来说明如何创建以及基本的操作: ```java import java.util.*; public class MapExample { public static void main(String[] args){ // 创建一个HashMap实例 Map<String, Integer> map = new HashMap<>(); // 添加元素 map.put("apple", 3); map.put("banana", 5); System.out.println("原始数据:" + map); // 获取某个键对应值 int appleCount = map.get("apple"); System.out.println("苹果的数量:" + appleCount); // 更新某项记录 map.put("apple", 7); System.out.println("更新后:" + map); // 删除一项 map.remove("banana"); System.out.println("删除香蕉之后:" + map); // 遍历打印所有项目 for (String key : map.keySet()) { System.out.println(key + " -> " + map.get(key)); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值