java - 如何在java中返回一个数组?使用 Eclipse

标签 java eclipse

这是我的方法:

public int[] generateNumbers(int numberOfTimes){
        int[] generatedNumbers = new int[numberOfTimes];
        int counter = 0;
        while(counter < generatedNumbers.length){
            generatedNumbers[counter] = generator.nextInt(this.maxNumber - this.minNumber + 1) + this.minNumber;
            counter++;
        }
        return generatedNumbers;    
    }

我创建了一个 JUnit4 测试,只是为了测试它的输出,我有这个:

@Test
    public void testGenerateNumbers() {
        assertEquals(this.simulator.generateNumbers(1), 2);
    }

现在,这显然返回 false,预期值为 <[I@6f1d0b1>。为什么我得到的是一个位置而不是实际的数组?任何帮助将不胜感激...顺便说一下,我们必须使用 assertEquals,所以其他任何事情都是不可能的,是的,我意识到使用其他东西来测试它更容易。

最佳答案

你需要使用assertArrayEquals()

assertArrayEquals(this.simulator.generateNumbers(1), new int[] {2});

关于java - 如何在java中返回一个数组?使用 Eclipse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18747508/

相关文章:

java - JNI - 如何将 'jint' 参数转换为 'unsigned int' C 类型值

java - 数字是素数 - SPOJ - 错误 "runtime error (NZEC)"

eclipse - Logcat只是显示级别标签

java - Eclipse 可以在方法结束时自动生成 Java 注释吗?

java - 如何用java记录Minecraft玩家的视线位置

java - 导出 JAR 源图像

java - Neo4j获取TransactionEventHandler的信息

java - 从 jlistbox 中的给定值中选择最大值

java - 在 axis2 web 服务中检索 jsf bean 作为服务器请求

java - 游戏正确结束时出现问题