Java 从映射中删除值

Java 从映射中删除值,java,Java,我有一张地图。 我想从列表中删除字符串 可能吗?我该怎么做 我不想删除映射,只需更改条目的“值” 我尝试了map.values().remove(“someString”),但这似乎不起作用。您还需要有一个值来索引到映射中 然后你可以这样做: if (map.containsKey(somethingParticular) && map.get(somethingParticular)!=null) map.get(somethingParticular).remove(

我有一张
地图
。 我想从
列表中删除
字符串

可能吗?我该怎么做

我不想删除映射,只需更改条目的“值”


我尝试了
map.values().remove(“someString”)
,但这似乎不起作用。

您还需要有一个值来索引到映射中

然后你可以这样做:

if (map.containsKey(somethingParticular) && map.get(somethingParticular)!=null)
    map.get(somethingParticular).remove("someString")
map.get(mapValue)。remove(“someString”)
尝试以下操作:map.get(key)。remove(“someString”)

尝试
map.get(somesthingkey)。remove(“someString”)
map.values()
返回
列表的集合。您必须迭代这些值并在每个列表中搜索您的键

    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 Map=newhashmap();
集合值=map.values();
用于(列表:值){
list.remove(“someString”);
}

要从所有字符串列表中删除该字符串,还是从特定的列表中删除该字符串

如果您想要一个特定的,则需要按键获取
列表

map.get(thekey).remove("someString")
如果要将它们全部删除,则需要对这些值进行循环,因为它们是
列表
的集合

for (List<String> list : map.values()) {
    list.remove("someString");
}
for(列表:map.values()){
list.remove(“someString”);
}
Map myMap=。。。。;
myMap.get(somethingInstance.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"));
Map Map=newhashmap();
List intList=new ArrayList();
增加(1);
增加(2);
增加(3);
增加(4);
map.put(“intlist”,intlist);
System.out.println(map.get(“intlist”);
intList=map.get(“intList”);
intList.remove(1);
增加(4);
//它们将是相同的(相同的参考)
System.out.println(intList);
System.out.println(map.get(“intlist”);

如果要从特定地图项目中删除字符串,应使用以下内容:

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");
}
for(列表:map.values()){
如果(列表!=null)
list.remove(“someString”);
}

对于
containsKey()和空检查来说是个好主意。