相关疑难解决方法(0)

在java中获取两组之间的对称差异的最佳方法是什么?

我想知道是否有一种快速/干净的方法来获得两组之间的对称差异?

我有:

Set<String> s1 = new HashSet<String>();
s1.add("a");
s1.add("b");
s1.add("c");

Set<String> s2 = new HashSet<String>();
s2.add("b");
Run Code Online (Sandbox Code Playgroud)

我需要这样的东西:

Set<String> diff = Something.diff(s1, s2);
// diff would contain ["a", "c"]
Run Code Online (Sandbox Code Playgroud)

只是为了澄清我需要对称差异.

java collections set

35
推荐指数
3
解决办法
3万
查看次数

检查地图中存在的值列表的最佳方法

我有一个Collection包含一些值。

Collection<String> myList = new ArrayList<String>();
myList.add("a");
myList.add("b");
myList.add("c");
Run Code Online (Sandbox Code Playgroud)

我创建了一个Map具有一些值的:

Map<String, String> myMap = new HashMap<String, String>();
myMap.put("r", "r");
myMap.put("s","m");
myMap.put("t", "n");
myMap.put("a", "o");
Run Code Online (Sandbox Code Playgroud)

我想检查列表中的值是否作为地图中的键存在?我知道使用 Java 的方法是遍历列表并使用 myMap.containsKey() 检查地图是否包含该特定值。我想知道是否有任何使用流或 for-each 的东西可以为我节省代码行或有效的方法!感谢您仔细考虑。

编辑:我想存储myList存在于myMap. 所以我的输出可以是一个列表,例如在这种情况下[b,c]

java collections dictionary hashmap java-8

5
推荐指数
2
解决办法
5556
查看次数

标签 统计

collections ×2

java ×2

dictionary ×1

hashmap ×1

java-8 ×1

set ×1