我正在研究一种方法,它需要一个2d数组,并在每一行中找到最小值。 在找到行中的最小值后,我希望进入另一个数组。 我有阵列,但我一直在阵列中得到空值。 这可能是一个简单的解决方法,但我一直在寻找这个很长时间,我需要一些帮助。
public static double[][] largeArray; public static double[] minArray; public static double min; private static void min() { for ( int row=0; row < largeArray.length; row++) { min = largeArray[row][0]; for(int col = 1; col > largeArray[row].length; col++) { if ( largeArray[row][col] < min ) min = largeArray[row][col]; for(int t=0; t<minArray.length; t++) { min = minArray[row]; } } } }谢谢你看这个!
I am working on a method that takes a 2d array and find the min value in each row. After it find the min in the row, I want that to go into another array. I have the array made, but I keep getting nulls in the array. This is probably an easy fix, but I've been looking at this for so long, I need some help.
public static double[][] largeArray; public static double[] minArray; public static double min; private static void min() { for ( int row=0; row < largeArray.length; row++) { min = largeArray[row][0]; for(int col = 1; col > largeArray[row].length; col++) { if ( largeArray[row][col] < min ) min = largeArray[row][col]; for(int t=0; t<minArray.length; t++) { min = minArray[row]; } } } }Thank you for looking at this!
最满意答案
您不将min存储在minArray 。 您也可以在循环中使用Math.min(double, double) 。 最后,你想在你的内部循环条件中使用< (not > ),你可以使用Arrays.toString(double[])在完成初始化时显示minArray 。 就像是,
private static void min() { minArray = new double[largeArray.length]; // <-- initialize the array for (int row = 0; row < largeArray.length; row++) { min = largeArray[row][0]; for (int col = 1; col < largeArray[row].length; col++) { min = Math.min(min, largeArray[row][col]); } minArray[row] = min; } System.out.println(Arrays.toString(minArray)); }You aren't storing the min value(s) in minArray. You can also use Math.min(double, double) in your loop. Finally, you want < (not >) in your inner loop condition and you could use Arrays.toString(double[]) to display the minArray when you have finished initializing it. Something like,
private static void min() { minArray = new double[largeArray.length]; // <-- initialize the array for (int row = 0; row < largeArray.length; row++) { min = largeArray[row][0]; for (int col = 1; col < largeArray[row].length; col++) { min = Math.min(min, largeArray[row][col]); } minArray[row] = min; } System.out.println(Arrays.toString(minArray)); }更多推荐
发布评论