有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java数组重复元素

我试图要求用户输入元素,但如果用户输入重复的元素,我的方法将返回false。到目前为止,这就是我所拥有的。。。提前谢谢你

public boolean setGuess(int index, int value) // required by instructor
{ 
    int [] guesses = new int[countVal]; //countVal is array length
    for (int i = 0; i < guesses.length; i++)
        for (int j = 0; j < i; j++)
        {
            if (guesses[i] == guesses[j])
                return false;
        }
    return true;
}

共 (3) 个答案

  1. # 1 楼答案

    虽然你没有问一个真正的问题,但很明显你会遇到麻烦,因为你分配了一个整数数组,但从来没有用任何东西填充它们。然后你开始寻找复制品

    如果你的问题是“这对我不管用”,那么这是一个可以看的地方

    另一个原因是,您有一个名为setGuess的方法,它听起来根本不像一个应该查找重复项的方法。事实上,它被称为setGuess,并且是“讲师要求的”,这意味着这项作业比你的问题要多得多

    考虑扩大这个问题,然后我可以撤回这个答案,这太长了一个评论…

  2. # 2 楼答案

    boolean hasRepeatedElement = new HashSet(Arrays.asList(arr)).size() == arr.length;
    
  3. # 3 楼答案

    在同一个问题上还有更多 1.代替猜测。长度u可以使用countVal
    2.“int index, int value”参数的用途是什么,您在方法中没有使用。 3.声明guesses[]在所有索引中只有0,因此"guesses [i] == guesses[j]"没有意义

    尝试回答以上所有问题,将有助于你更好地编写代码