【发布时间】:2019-09-02 22:53:57
【问题描述】:
我有一张地图如下:
final Map<myobj,Set<String>> existingNames = this.getExistingCIs(_actual,_names.keySet());
返回:
{myobj43c0e17f0100000606@3508cfdf=[Immutable]}
我正在尝试检查地图值是否包含字符串“不可变”,然后我正在尝试做进一步的逻辑。但是existingNames.containsValue("Immutable") 抛出false:
if (existingNames.containsValue("Immutable")) {
// mylogic
}
是因为Set<String>吗?如果是这样如何检查?我认为我在比较时做错了。我只有 Java 的基本知识,不知道如何转换集合来检查字符串。
【问题讨论】:
-
existingNames.containsValue("Immutable")检查String作为值。但是您的地图值是Set<String>对象。Set在概念上不能等于String,可以吗? -
你应该遵循Java命名约定:变量名和方法名用驼峰命名; PascalCase 中的类名。
-
@ernest_k,是的,我同意。但我不知道如何用 mystring 检查
set对象
标签: java string collections set contains