如何解决从地图中删除值
| 我有一个“ 0”。 我想从List<String>
中删除String
。
那可能吗 ?我怎么做 ?
我不想删除映射,只需更改条目的“值”即可。
我尝试过map.values().remove(\"someString\")
,但这似乎不起作用。
解决方法
尝试
map.get(somethingKey).remove(\"someString\")
。
, 如果要从特定的地图项中删除字符串,则应使用以下内容:
if (map.containsKey(somethingParticular) && map.get(somethingParticular)!=null)
map.get(somethingParticular).remove(\"someString\")
如果要从所有地图项中删除\“ someString \”,则最好执行以下操作:
for(List<String> list : map.values()) {
if (list!=null)
list.remove(\"someString\");
}
, 您实际上还需要有一个值才能索引到地图。
然后,您可以执行以下操作:
map.get(mapValue).remove(\"someString\")
, 试试这个:map.get(key).remove(\“ someString \”)
, 您是否要从所有字符串列表或特定列表中删除该字符串?
如果您想要一个特定的,则需要通过键获取List<String>
:
map.get(thekey).remove(\"someString\")
如果要全部删除,则需要遍历所有值,因为它们是List<String>
的集合。
for (List<String> list : map.values()) {
list.remove(\"someString\");
}
, Map<Something,List<String>> myMap = ....;
myMap.get(somethingInstance).remove(\"someString\");
, map.values()
返回List<String>
的集合。您必须遍历值并在每个列表中搜索您的密钥。
Map<String,List<String>> map = new HashMap<String,List<String>>();
Collection<List<String>> values = map.values();
for( List<String> list : values ) {
list.remove( \"someString\" );
}
, 对的,这是可能的 :
Map<String,List<Integer>> map = new HashMap<String,List<Integer>>();
List<Integer> intList = new ArrayList<Integer>();
intList.add(1);
intList.add(2);
intList.add(3);
intList.add(4);
map.put(\"intlist\",intList);
System.out.println(map.get(\"intlist\"));
intList = map.get(\"intlist\");
intList.remove(1);
intList.add(4);
//they will be the same (same ref)
System.out.println(intList);
System.out.println(map.get(\"intlist\"));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。