Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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,我想改进这个方法,因为我使用break来中断代码,否则它将打印数组3次。我相信它是有效的,但我认为一定有更好的方法。任何帮助都将不胜感激 //this method takes an array of doubles and returns a bidimensional array public static double[][] allKgToPounds(double... kilogramValues) { double[][] result = new double[kilog

我想改进这个方法,因为我使用break来中断代码,否则它将打印数组3次。我相信它是有效的,但我认为一定有更好的方法。任何帮助都将不胜感激

//this method takes an array of doubles and returns a bidimensional array
public static double[][] allKgToPounds(double... kilogramValues) {
    double[][] result = new double[kilogramValues.length][kilogramValues.length];
    for (int j = 0; j < result.length; j++) {
        for (int i = 0; i < result[0].length;) {
            System.out.printf("[%.2f kgs-> ", kilogramValues[j]);
            result[j][i] = kilogramValues[j] * kilogramToPounds;
            System.out.printf("%.2f lbs] %n",result[j][i]);
            break;//I use break because otherwise it will print the bidemsional array 3 times
        }
    }       
    return result;
}
//此方法接受一个双精度数组并返回一个二维数组
公共静态双精度[]所有KGTOPUNDS(双精度…千克值){
double[][]结果=新的双精度[kg值.length][kg值.length];
对于(int j=0;j”,千克值[j]);
结果[j][i]=千克值[j]*千克数;
系统输出打印F(“%.2f磅]%n”,结果[j][i]);
break;//我使用break,因为如果不使用break,它将打印双字节数组3次
}
}       
返回结果;
}

提示:当给定n千克值时,您不希望得到n X n的结果。你想要一个nx2的结果;结果[n][0]将使用千克值[n]中的原始千克值,结果[n][1]将千克值[n]转换为磅。

我不理解您的代码,它会打印三次,因为您一行有三列,问题是什么?如果只想打印1个值而不是
break
return,为什么要使用二维数组?为什么需要二维数组,在我看来,返回包含转换权重的double[]是有意义的。这与打印一次数组是一致的?这是为了练习,老师想要一个二维数组,可以像这样打印千克和磅[1kg-2.20lbs],请参见: