java - 有没有办法可以检查哈希集(Java)的重复输入?

标签 java hashset

我正在尝试制作一个刽子手游戏,如下所示:

 public void guessLetter(String letter) {
    HashSet<String> guessedLettersA = new HashSet<>();
    guessedLettersA.add(letter);

    for (String guessedLetterA : guessedLettersA) {
        this.guessedLetters += guessedLetterA;
    }

    if (!this.word.contains(letter)) {
        this.numberOfFaults++;
    }
}

public boolean letterCheck() {
    if ( = false ) {
        System.out.println("You have already guessed this letter!");
    }

我目前正在使用 letterCheck 方法,希望查看其中一个输入是否重复,并让用户知道他们的猜测不算数。我认为它不会弥补他们的失败或算作另一个猜测,因为它从未添加到哈希集中。所以我正在努力解决的问题是我该如何按照自己的意愿去做,我正在考虑使用哈希集返回 false 的内置方式来检测这一点,但我不知道如何实现它,因为它需要引用另一个方法,我不知道如何使字符串哈希集返回 boolean 值。我非常感谢任何帮助,谢谢。

最佳答案

add API 将为现有值返回 false(它无法添加到Set),因此可以处理您的条件与

boolean letterCheck = guessedLettersA.add(letter);
if(!letterCheck) {
    System.out.println("You have already guessed this letter!");
}

注意:此 block 的调用完全取决于您的应用程序的设计。

关于java - 有没有办法可以检查哈希集(Java)的重复输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59781465/

相关文章:

java - 为什么我收到错误? : parameter t has incompatible upper bounds: Preference and Preference

java - 如何计算两个以上 HashSet 之间的交集?

c# - 值对象的 IEqualityComparer

rust - 我可以有效地从 HashSet 中弹出吗?

java - 为什么引用文献会自动更新?

java - 如何使用java检查本体一致性

2D游戏中Java swing渲染现象

java - 拥有多项工作并选择我想在 Spring 中运行的一项

java - HashMap 和 HashSet 有什么共同点?

java - 如何对重复字符串进行计数和排序