
如果是有要求,那么你只能遍历List,找出包含"王五"的Map,然后更改.
删除"李四"只需要删除包含"李四"的Map就行了.
毕竟主体是List,Map看起来是键值对,但因为键是一样的,所以其实就是一个List,而且比直接用List或者Map还额外多了一步.
如果是题主自己写的....诶.....
用一个List不行吗?还键值对,所有的Key都同一个名字,好玩么?
这种结构维护起来别人是要骂娘的.
ArrayList是Java中的动态数组,它可以存储任意类型的对象,并支持快速的随机访问。ArrayList的底层实现是一个数组,它的大小可以根据需要动态增长。举个例子,我们可以使用如下的代码来创建一个ArrayList,并向其中添加几个元素:
ArrayList<String>list = new ArrayList<>()
list.add("apple")
list.add("banana")
list.add("orange")
在这个例子中,我们创建了一个字符串类型的ArrayList,并向其中添加了3个字符串元素:"apple"、"banana"和"orange"。ArrayList会自动分配足够的存储空间来保存这些元素,并为每个元素分配一个下标,从0开始。
HashMap是Java中的映射表,它可以将任意类型的对象映射到另一个任意类型的对象。HashMap的底层实现是一个数组和一组桶,它通过对键进行散列函数计算,将键值对存储到桶中。
举个例子,我们可以使用如下的代码来创建一个HashMap,并向其中添加几个键值对:
HashMap<String, Integer>map = new HashMap<>()
map.put("apple", 1)
map.put("banana", 2)
map.put("orange", 3)
在这个例子中,我们创建了一个字符串到整数的映射表,并向其中添加了3个键值
对:"apple"映射到1、"banana"映射到2、"orange"映射到3。HashMap会自动分配足够的存储空间来保存这些键值对,并通过对键进行散列函数计算来将键值对存储到对应的桶中。
总的来说,ArrayList和HashMap都是Java中常用的数据结构,它们的底层实现分别是数组和数组加桶的形式,可以满足大多数的数据存储和访问需求。但是,如果需要更高效的数据存储和访问方式,可以考虑使用其他的数据结构,比如链表、树、哈希表等。
希望这对你有帮助!望采纳!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)