java - 比较两个数组的数组元素时, boolean 结果始终返回 true

标签 java arrays boolean

我在比较两个 int 数组中的元素时遇到问题。我正在使用for循环来比较两个数组中的每个元素,如果元素匹配,则 boolean 结果返回true,否则返回false。问题是它总是返回 true,无论它们是否匹配。

整个程序在这里 http://pastebin.ca/2626244

循环:

    boolean result;
    int counter = 0;
    //compares answers[] to key[]
    for (int i = 0; i < size; i++)  {
        if (answers[i] == key[i]) {
            result = true; 
            }
        if (answers[i] != key[i]) {
            result = false;
        }
        if (result = true) {
            counter++;
        }
    }
    System.out.println(counter+"/"+size+" questions are correct.");

因此,“counter”始终与总元素(“size”)的值相同。即使两个数组包含完全不同的值,结果也不会是 0/size。它似乎总是尺寸/尺寸。

我是否错误地比较了数组(查看完整程序),还是我的循环有问题?

最佳答案

使用比较运算符 == 来比较事物,而不是赋值运算符 =。但是因为 result 已经是一个 boolean,所以只需使用 boolean 本身。

改变

if (result = true) {

if (result)

关于java - 比较两个数组的数组元素时, boolean 结果始终返回 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21562590/

相关文章:

java - 尝试使用正则表达式读取文本文件来检查每一行

c - 为什么这个结构数组只访问第一个元素并显示其余元素的段错误?

C中比较两个char数组的内容

java - 我们如何使用映射从 double 组中获取唯一元素‽

php - mysql_num_rows()期望参数1为资源,字符串在

java - 在没有二进制的 Perl/Java 中打印 n 个变量的所有可能的 boolean 状态

java - 如何有条件地添加(或修改)ContextConfigLocation 到 web.xml?

java - 当在登录 Activity 中按下退格键时,Android 在登录屏幕上关闭

sql - 如何在 MySQL 中的两列上执行 boolean 逻辑?

java - 当类具有与导入方法同名的方法时,import static 不起作用