Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:数组返回最大数错误_Java_Arrays - Fatal编程技术网

Java:数组返回最大数错误

Java:数组返回最大数错误,java,arrays,Java,Arrays,我想找到数组中的最大数,然后将它们打印出来,但我得到的最大数输出不正确。下面是输出,因为您可以看到最大数字的第二个和第三个输出不正确 下面是我的代码: 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[][] = {{

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

下面是我的代码:

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);
}
double x[][]={{{3.24,-0.96},
{-1.56,-0.61},
{-1.1,2.5},
{1.36,-4.8}};
字符串y[]={“B”、“C”、“A”、“C”};
双w[][]={{0,1.94,3.82},{0,-4.9,-4.03},{0,4.48,3.25};
双阈值=1;
int n=x.长度;
int m=w长度;
双倍总额[]=新的双倍[3];
双最大值=0;
双输入=0;

对于(int i=0;i您从未重置
max
值,因此它仍然设置为上次计算的最大值


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

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


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

您将继续为后续的i循环保留j循环的最大值

在随后的i循环开始之前,将最大值重置为最小值。同时编辑从sero到最小值的初始声明。 请参阅下文

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 = Integer.MIN_VALUE;
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;
}
double x[][]={{{3.24,-0.96},
{-1.56,-0.61},
{-1.1,2.5},
{1.36,-4.8}};
字符串y[]={“B”、“C”、“A”、“C”};
双w[][]={{0,1.94,3.82},{0,-4.9,-4.03},{0,4.48,3.25};
双阈值=1;
int n=x.长度;
int m=w长度;
双倍总额[]=新的双倍[3];
double max=整数.MIN_值;
双输入=0;

对于(int i=0;i您将继续为后续i循环保留j循环的最大值

在随后的i循环开始之前,将最大值重置为最小值。同时编辑从sero到最小值的初始声明。 请参阅下文

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 = Integer.MIN_VALUE;
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;
}
double x[][]={{{3.24,-0.96},
{-1.56,-0.61},
{-1.1,2.5},
{1.36,-4.8}};
字符串y[]={“B”、“C”、“A”、“C”};
双w[][]={{0,1.94,3.82},{0,-4.9,-4.03},{0,4.48,3.25};
双阈值=1;
int n=x.长度;
int m=w长度;
双倍总额[]=新的双倍[3];
double max=整数.MIN_值;
双输入=0;
对于(int i=0;i