Java:数组返回最大数错误

标签 java arrays

我想找到数组中的最大数字然后将其打印出来,但我得到的最大数字输出不正确。下面是输出,您可以看到最大数字的第二个和第三个输出不正确。

enter image description here

下面是我的代码:

double x [][] = {{3.24,-0.96},
                 {-1.56,-0.61},
                 {-1.1,2.5},
                 {1.36,-4.8}};
String y [] = {"B","C","A","C"};
double w[][] = {{0,1.94,3.82},{0,-4.9,-4.03},{0,4.48,3.25}};
double threshold = 1;
int n = x.length;
int m = w.length;
double total [] = new double[3];
double max = 0;
double input = 0;

for(int i=0;i<n;i++){
     for(int j=0;j<m;j++){
          total[j] = (threshold * w[j][0]) + (x[i][0] * w[j][1]) + (x[i][1] * w[j][2]);
          System.out.print(total[j] +", ");
          input = total[j];
          max = Math.max(input,max);
     }

     System.out.println();
     System.out.println("Maximum is "+ max);
}

最佳答案

您从未重置最大值,因此它仍设置为上次计算的最大值。

当所有值都低于零时,它也会失败。您应该在每次运行前将 max 初始化为 Integer.MIN_VALUE

关于Java:数组返回最大数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42595257/

相关文章:

arrays - 在 bash 中相应地对两个数组进行排序

java - 为什么一个对象应该有一个返回 "this"的方法?

java - Flyway jdbc迁移连接问题

arrays - 如何选择numpy数组中具有特定值的特定行列对?

javascript - 为什么这个函数没有重新分配变量?

java - 如何检查对象数组中对象的重复值,合并重复值,然后删除重复值?

java - 使用 mockito 模拟父类(super class)方法调用不起作用

java - 如何在 Java 中将 JMSBytesMessage 转换为 TextMessage

java - 对 java ConcurrentHashMap 中的值进行排序

SQL 数组作为准备语句的参数 - 可移植性