gpt4 book ai didi

java - 使用 containsAll() 比较两个 ArrayList

转载 作者:行者123 更新时间:2023-12-01 12:27:05 29 4
gpt4 key购买 nike

有人可以帮我解决这个问题吗?

我有两个 ArrayList。

array1 包含:

[3 Avocados, 3 Tomatoes, 1 Teaspoon of Salt, 1/2 Cup Diced onion]

array2 包含:

[Avocados, Tomatoes]

我正在尝试使用 array1.containsAll(array2) 但它返回 false 因为 中的鳄梨和西红柿前面有“3”数组1

谢谢!

最佳答案

我建议使用 HashMap反而。 HashMap 包含一组键和值,而不是像数组列表那样包含一个值。在这种情况下,您应该将成分名称作为键,将数量作为值。然而,HashMap 没有 containsAll 方法,但您可以获取一组键(成分),然后调用 Set.containsAll .

HashMap<String, Integer> array1 = new HashMap<String, Integer>();
ArrayList<String> array2 = new ArrayList<String>();
array1.put("Avocados", 3);
array1.put("Tomatoes", 3);
//etc.
array1.keySet().containsAll(array2);

关于java - 使用 containsAll() 比较两个 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26246086/

29 4 0