如何将第一个数组的元素与java中另一个数组的以下元素进行比较?

How to compare the elements of a first array, with the following elements of another array in java?

提问人:Ricardo Aguilar 提问时间:2/11/2023 最后编辑:AnonymousRicardo Aguilar 更新时间:2/11/2023 访问量:67

问:

在 java 中,我定义了第一个字符数组,最多有 4 个元素,第二个字符数组由用户输入填充,最多有 4 个元素。char[]

我想将第一个数组的第一个元素(index[0])与另一个数组的每个元素进行比较,依此类推,与第一个数组的每个元素进行比较(与另一个数组的每个元素进行比较)

我知道我不能使用 == 运算符,因为它比较引用,并且它与 equals() 方法相同。

练习规定我只能使用循环或 Arrays 类及其 equals() 方法,我尝试过以各种方式应用逻辑,但我把它留在这里,我得不到它,有什么帮助吗?

如果找到匹配项,程序必须为每个匹配项递增一个变量。 注意:这两个数组的类型都是 char

for (int i = 1; i <= MAX_INTENTOS; i++) {
            System.out.print("Código " + i + " de 10>> ");
            letrasEntrada = entrada.nextLine();

            if (i == MAX_INTENTOS) {
                perdiste = true;
            }

            for (int j = 0; j < LARGO_CODIGO; j++) {
                letrasAdivinador[j] = letrasEntrada.charAt(j);
            }

            for (int x = 0; x < letrasPensador.length; x++) {
                Arrays.equals();


//                if (letrasAdivinador[x] == letrasPensador[x]) {
//                    b += 2;
//                } else {
//                    if (x + 1 < letrasPensador.length && letrasAdivinador[x] == letrasPensador[x + 1]) {
//                        b += 1;
//                    }
//                    if (x + 2 < letrasPensador.length && letrasAdivinador[x] == letrasPensador[x + 2]) {
//                        b += 1;
//                    }
//                    if (x + 3 < letrasPensador.length && letrasAdivinador[x] == letrasPensador[x + 3]) {
//                        b += 1;
//                    }
//                }
            }
Java 数组 算法 char 比较

评论

1赞 Old Dog Programmer 2/11/2023
“我知道我不能使用 == 运算符,因为它比较引用,而且它与 equals() 方法相同。”如果你指的是比较类型,那就是一个错误。因为是 Java 中的原语之一,所以你会用它来比较两个,并且不起作用。charchar==char.equals
0赞 Old Dog Programmer 2/11/2023
Java Arrays 有两个用于 char 数组的 .equals 方法。看到那个,然后下一个下来。
1赞 Anonymous 2/11/2023
这回答了你的问题吗?如何在 Java 中使用字符的 equals() 方法?
1赞 Old Dog Programmer 2/11/2023
您应该显示更多的代码。我假设 entrada 是一个包装 System.in 的 Scanner 对象,letrasAdivinador 和 letrasPensador 都是 char [],但我不应该假设这一点。您问题中的代码应该表明这一点。另外,请解释您遇到的问题,您在哪里遇到麻烦。
1赞 Ricardo Aguilar 2/13/2023
我能够通过遍历两个嵌套循环并使用 == 运算符来找到问题的解决方案

答: 暂无答案