【问题标题】:Get key of type UUID and compare to string value获取 UUID 类型的键并与字符串值进行比较
【发布时间】:2022-01-18 13:06:15
【问题描述】:

我有一个 UUID 和令牌类型的 HashMap。 UUID 是关键。我想将键作为字符串并将其与另一个字符串进行比较。 这是我的哈希图:

private final Map<UUID,Token> token = new HashMap<>();

然后我想要例如

token.containsKey(string) = true

但它不会像这样工作。

我想提取键值(UUID)并将其与字符串进行比较。所以应该比较这两者。我尝试过 for 循环和 containsKey(),但它不起作用。有没有人解决这个问题?

谢谢

【问题讨论】:

  • 您好,欢迎您!请查看Map - 如UUID javadocs。后者提供与字符串之间的“转换函数”,第一个提供java.util.Map 的一般文档和“约定”(键、值、...、等于、hashCode...)

标签: java string hashmap uuid


【解决方案1】:

如果我明白,在给定的UUID 作为键,你想从它的字符串值中得到它的令牌值吗?

例如:

public boolean isContains(String uuidAsString, Map<UUID, Token> tokenMap) {
    UUID key = UUID.fromString(uuidAsString);  // Parse input string as a UUID object.
    return tokenMap.containsKey(key);  // Look for that UUID object among the map’s keys.
}

注意如果name不符合UUID的字符串表示,fromString会抛出IllegalArgumentException

【讨论】:

  • 非常感谢这对我帮助很大
猜你喜欢
  • 2014-03-16
  • 2020-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-05
  • 2018-09-17
  • 1970-01-01
相关资源
最近更新 更多