如果我想从Set中删除(“ one”,1),应该怎么写为Set remove()方法的参数?

用户名

我正在Java教程oracle学习Map接口并遇到以下语句:

Collection视图支持以多种形式删除元素-remove,removeAll,retainAll和clear操作以及Iterator.remove操作。

所以,我想出了下面的代码,并试图使用Collection.remove()方法要删除的元素,即一个("one", 1)Set sme1但是我不确定sme1.remove()如果要从中删除("one", 1)应该写什么作为method的参数sme1有人可以帮我吗?在此先感谢您的帮助!

Map<String, Integer> m1 = new LinkedHashMap<>();
m1.put("one", 1);
m1.put("two", 2);
m1.put("three", 3);

Set<Map.Entry<String, Integer>> sme1 = m1.entrySet();
System.out.println(sme1);

sme1.remove(?);//what should I write as the argument to sme1.remove() method if I want to remove ("one", 1) from sme1.

System.out.println(m1);
斑鸠

请勿从EntrySet中删除,而应从地图本身中删除,如下所示:

Map<String, Integer> m1 = new LinkedHashMap<>();
m1.put("one", 1);
m1.put("two", 2);
m1.put("three", 3);

System.out.println(m1);

m1.remove("one");

System.out.println(m1);

您正在告诉地图删除键为“ one”的元素。

这是相比于得到一个更清洁的解决方案Set所有Map.Entry的在Map和调用Map.Entry.remove()

正如Java教程所述,所有都Collection支持该remove()操作。在这种情况下,如果你想使用做了删除SetMap.Entry,那么你需要告诉SetMap.Entry删除。这些remove()操作会equals()在中的每个条目上调用方法Collection因此,您需要将其传递给aMap.Entry进行比较Map.Entry,以便找到要删除的正确元素。

以这种方式进行操作将如下所示:

Map<String, Integer> m1 = new LinkedHashMap<>();
m1.put("one", 1);
m1.put("two", 2);
m1.put("three", 3);

Set<Map.Entry<String, Integer>> sme1 = m1.entrySet();
System.out.println(sme1);

sme1.remove(new AbstractMap.SimpleEntry<String, Integer>("one",1));

System.out.println(sme1);

远不及“漂亮”!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果我想捕获我在形式参数中为 fun1 传递的值,我该怎么做?

来自分类Dev

如果没有使用请求对象,我应该将其从回调参数中删除吗

来自分类Dev

在更新时,如果我的参数之一为空,如何从数据库中删除它?

来自分类Dev

我想从输入文件中的行读取值,并用它们为对象的构造函数的参数

来自分类Dev

我想从最小长度为3个字符的数组中删除索引

来自分类Dev

如果表单字段值是空白,如果它保留为空白,我想从生成的报告中隐藏它

来自分类Dev

如果我使用只有一个参数的post请求,我在springboot中应该怎么做?

来自分类Dev

如果我想从输入中传递数据,并且还希望用户不能编辑 id 输入,该怎么办?

来自分类Dev

如果methods参数为空,我试图在html中调用JavaScript方法我的结果是方法的调用者脚本

来自分类Dev

如果参数为False,则从列表中删除项目

来自分类Dev

(Jersy) 不带参数的Get方法怎么写

来自分类Dev

如何覆盖Set的remove方法?

来自分类Dev

我应该怎么写三个点?

来自分类Dev

jQuery click事件无法正常运行?我应该怎么写?

来自分类Dev

我应该在C#dllimport本机方法调用中为参数释放内存吗?

来自分类Dev

我想从innerHTML中删除

来自分类Dev

如果在字符串方法中的参数为负数,我们是否仍然从零开始计数?

来自分类Dev

如何处理参数与返回值紧密相关的方法。如果参数为空怎么办?爪哇

来自分类Dev

我想从消息弹出窗口中删除localhost /主机名。我该怎么做?

来自分类Dev

我应该重新利用我的EF查询方法吗?如果可以,该怎么做

来自分类Dev

Java,如果我想从函数返回不同的类型怎么办?

来自分类Dev

如果删除BtrFS快照中的文件应该怎么办?

来自分类Dev

我应该从在 Java 中修改“对象参数”的方法返回“对象参数”吗?

来自分类Dev

我应该在表单上还是在类 set 方法中执行输入验证?

来自分类Dev

如何使用 Swift set remove at 方法?

来自分类Dev

java中以Object为参数的实现方法

来自分类Dev

删除bash中多余行的最快方法,或者如果string为#,则删除最后一行

来自分类Dev

我想从php的网址中删除%20

来自分类Dev

我应该在Redis中为用户特定的数据使用哈希吗?如果是,怎么做?

Related 相关文章

  1. 1

    如果我想捕获我在形式参数中为 fun1 传递的值,我该怎么做?

  2. 2

    如果没有使用请求对象,我应该将其从回调参数中删除吗

  3. 3

    在更新时,如果我的参数之一为空,如何从数据库中删除它?

  4. 4

    我想从输入文件中的行读取值,并用它们为对象的构造函数的参数

  5. 5

    我想从最小长度为3个字符的数组中删除索引

  6. 6

    如果表单字段值是空白,如果它保留为空白,我想从生成的报告中隐藏它

  7. 7

    如果我使用只有一个参数的post请求,我在springboot中应该怎么做?

  8. 8

    如果我想从输入中传递数据,并且还希望用户不能编辑 id 输入,该怎么办?

  9. 9

    如果methods参数为空,我试图在html中调用JavaScript方法我的结果是方法的调用者脚本

  10. 10

    如果参数为False,则从列表中删除项目

  11. 11

    (Jersy) 不带参数的Get方法怎么写

  12. 12

    如何覆盖Set的remove方法?

  13. 13

    我应该怎么写三个点?

  14. 14

    jQuery click事件无法正常运行?我应该怎么写?

  15. 15

    我应该在C#dllimport本机方法调用中为参数释放内存吗?

  16. 16

    我想从innerHTML中删除

  17. 17

    如果在字符串方法中的参数为负数,我们是否仍然从零开始计数?

  18. 18

    如何处理参数与返回值紧密相关的方法。如果参数为空怎么办?爪哇

  19. 19

    我想从消息弹出窗口中删除localhost /主机名。我该怎么做?

  20. 20

    我应该重新利用我的EF查询方法吗?如果可以,该怎么做

  21. 21

    Java,如果我想从函数返回不同的类型怎么办?

  22. 22

    如果删除BtrFS快照中的文件应该怎么办?

  23. 23

    我应该从在 Java 中修改“对象参数”的方法返回“对象参数”吗?

  24. 24

    我应该在表单上还是在类 set 方法中执行输入验证?

  25. 25

    如何使用 Swift set remove at 方法?

  26. 26

    java中以Object为参数的实现方法

  27. 27

    删除bash中多余行的最快方法,或者如果string为#,则删除最后一行

  28. 28

    我想从php的网址中删除%20

  29. 29

    我应该在Redis中为用户特定的数据使用哈希吗?如果是,怎么做?

热门标签

归档