编辑:我愚蠢如地狱 - 应该正确检查测试用例。问题解决了 - 抱歉浪费你的时间
下图展示了我希望实现的目标:
这是我的代码:
public static int[][] square(int[] array) {
int arraySquare[][] = new int[array.length][2];
for (int i = 0; i < array.length; i++) {
arraySquare[i][0] = array[i];
arraySquare[i][1] = (int) Math.pow(array[i], 2);
}
return arraySquare;
}
哪里出错?
编辑:
以下@Test案例:
private final int[] array1 = {1, 2, 3};
private final int[] array7 = {1, 4, 9};
@Test
public void testSquare1() {
int[][] r = Arrays.square(array1);
assertEquals(2, r.length);
assertArrayEquals(array1, r[0]);
assertArrayEquals(array7, r[1]);
}
答案 0 :(得分:0)
假设Arrays
是java.util.Arrays
,那么就没有Arrays.square()
这样的方法(至少不在JDK8中)
数组长度测试将导致错误。
// actual array length is 3 based on example provided
assertEquals(2, r.length);