如何在HashMap中更改键的值?

AvB*_*AvB 1 java hashmap map

你好,我怎么能改变一个键的值HashMap

请看这个:

private static final Map<String, DefaultMutableTreeNode> M = new HashMap<>();

public static DefaultMutableTreeNode executeCommand(int command, String item1, String item2) {
      switch (command) {
        //...
        case CommandsList.CREATE_CHILD:
            String name = item1;
            M.put(name, new DefaultMutableTreeNode(name));
            //...
            return M.get(root);
        case CommandsList.CHANGE_NAME:
            String newName = item2;
            //
            //what should I do here to replace name with newName???
            //
            return M.get(root);
        //...
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

azu*_*rog 8

您无法直接更改密钥的值,但您可以轻松地在新密钥下重新添加值,如下所示:

    map.put(newkey, map.remove(oldkey));
Run Code Online (Sandbox Code Playgroud)