首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BlueJ - Java代码

BlueJ - Java代码
EN

Stack Overflow用户
提问于 2014-04-28 15:29:47
回答 1查看 838关注 0票数 2

我有以下代码:

代码语言:javascript
复制
public class Square {
    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;
    }
    //other methods...
}

每当我调用BlueJ方法并选择double[] square (double a[])并键入0、1、2和3时,我就会一直得到一个期望的错误消息错误标识符。所以我不能测试我的数字,我怎样才能解决这个问题?正常情况下,如果你输入0,1,2和3,你应该得到每个数字的平方,但出于某种原因,我没有管理它。

编辑:

这就是我试图测试这个方法的方法:

代码语言:javascript
复制
Square.square(0, 1, 2, 3);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-28 15:37:26

问题是您需要发送一个double[],但是您要发送4个int参数。解决这一问题的方法有两种:

  1. 发送一个真正的double[]: Square.square(新double[] { 0,1,2,3} );
  2. 更改方法以接收varargs: 公共静态double[]广场(双人间)a) 现在您可以传递任意数量的参数: Square.square(0,1,2,3,4,5,…);

只需记住将方法的结果存储在另一个double[]中,以评估结果:

代码语言:javascript
复制
double[] results = Square.square( <add the arguments depending on the chosen solution> );
System.out.println(java.util.Arrays.toString(results));

要测试您的代码是否有效,只需编写一个public static void main方法并调用所需的方法来查看它是否可以执行,并可能评估结果。您甚至可以在Square类中这样做:

代码语言:javascript
复制
public class Square {
    public static double[] square(double[] a) {
        //the definition of your method...
    }

    public static void main(String[] args) {
        //calling the method to seek if compiles
        double[] results = Square.square(new double[] { 0, 1, 2, 3 });
        //printing the results
        System.out.println(java.util.Arrays.toString(results));
    }
}

如果您希望/需要对代码进行测试,这意味着,执行它并评估您是否获得了所需的结果,您可以使用编写一个单元测试。我将添加一个测试将是什么样的示例:

代码语言:javascript
复制
public class SquareTest {
    @Test
    public void testSquare {
        double[] expectedResults = { 0, 1, 4, 9 };
        double[] results = Square.square(new double[] { 0, 1, 2, 3 });
        Assert.assertArrayEquals("Not the desired results.", expectedResults, results, 0.00001);
    }
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23345104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档