【发布时间】:2021-04-16 14:52:45
【问题描述】:
我无法在我的 HashMap 中包含的字符串数组中找到一个元素。我有一个确实在这个 String[] 内的字符串,但是执行以下操作不起作用。
if (groupOuMap.containsValue("someString")) {
groupOu = "someString";
}
我的目标是在找到值的地方找到我的HashMap的对应键。
以我的地图为例:
nedcard.nl -> ["Wijchen account"]
mic.ad -> ["Ayutthaya4", "Brazil", "Changi", "Dresden", "Guangzhou"]
如果我搜索字符串 Brazil,我想要一个新的字符串数组,它是:
String[] groupOu = {"mic.ad", "Brazil"};
我也尝试过使用groupOuMap.values().contains(),但没有成功。
我做错了吗?谢谢!
【问题讨论】:
-
请显示更多您的代码
-
欢迎来到 Stack Overflow!您的值是数组,而不是字符串。因此,例如,没有一个值可以等于
"someString"。如果这是必要的操作,您可能需要重新考虑您的结构。否则,如果必须使用此结构,则必须遍历值并检查每个String[]是否有匹配的元素。 -
您可以遍历地图的条目(键值对)并查找值然后返回键。
-
如果可以在多个数组的多个键中找到该字符串,那么应该返回哪个键呢?他们全部?找到第一个配件?
-
@BerkKurkcuoglu 我尝试遍历条目但没有成功,我认为正如 Henry Twist 所说,我的值是数组而不是字符串。