Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.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,下面是一段代码,返回一个新数组,其中包含数组参数元素的平方(输入数组应该保持不变)。例如,如果输入数组是{0,1,2,3},那么输出就是{0,1,4,9} public static double[] square (double a[]){ double[] s = new double[a.length]; for (int i=0; i<a.length; i++) { s[i]=a[i]*a[i]; } return s; } 公共

下面是一段代码,返回一个新数组,其中包含数组参数元素的平方(输入数组应该保持不变)。例如,如果输入数组是{0,1,2,3},那么输出就是{0,1,4,9}

public static double[] square (double a[]){
    double[] s = new double[a.length];
    for (int i=0; i<a.length; i++) {
        s[i]=a[i]*a[i];
    }
    return s;
}
公共静态双[]方(双a[]{
double[]s=新的double[a.长度];

对于(int i=0;i好的,我看到您使用的是BlueJ。我不熟悉该IDE,但我相信您看到的错误:“error:expected”是为失败的编译抛出的。这通常表现为语法错误,如忘记分号或大括号

--编辑--

如果您决定使用JUnit4,示例如下:

@Test(expected=NullPointerException.class)
public void testNull() {
    Square.square(null);
}

@Test
public void testArray() {
    double[] squares = Square.square(new double[] {0d, 1d, 2d, 3d});
    Assert.assertEquals(squares[0] == 0d);
    Assert.assertEquals(squares[1] == 1d);
    Assert.assertEquals(squares[2] == 4d);
    Assert.assertEquals(squares[3] == 9d);
}

您的posted方法似乎没有抛出该异常。为了帮助您,我需要一个stacktrace。@jgitter,什么是stacktrace?我如何提供它,以便您可以帮助我?您共享的代码很好。问题可能与您使用该方法的方式有关。例如,如果参数
a
为空,则当你在这里上传你的截图时,e方法将失败。。你提供的链接也可能会从第三方服务器上删除。@Acemi:可能不需要。。请看我下面的答案。你使用的是IDE,你确定它不是按需编译的吗?我不想油嘴滑舌,但如果你不知道堆栈跟踪是什么,你就是c我对java非常陌生。好吧,我只是想用0、1、2和3来测试这段代码,我该怎么做?我对BlueJ一无所知。我会用JUnit。好的,有什么方法可以在线编译和检查代码吗?比如JSFIDLE for javascript?类似于java吗?@Acemi这里有一个在线示例: