int数组作为参数的方法

时间:2014-11-22 16:34:46

标签: java

任务是: 写一个方法printArray。 它应该采用int数组作为参数。 它应该在一行中写入数组中的每个int(系统输出) 如果参数为null,则不应写入任何内容。

在我的代码中,我收到此消息:PrintStream类型中的方法println(boolean)不适用于参数(void)。

MY CLASS:
public class Upg9_tenta {
    public static void printArray(int arr[]){
        int i = 0;
        while(i<arr.length){
            System.out.print(arr[i]);
            i++;

    }
}
}

MY MAIN:

public class Upg9_tentamain {
    public static void main (String []args){

        int []arr = {1, 3, 8, 6};

        Upg9_tenta.printArray(arr);

        System.out.println(Upg9_tenta.printArray(arr));


}
}

3 个答案:

答案 0 :(得分:3)

printArray会返回void,因此您无法打印出其返回值。

只需移除为该方法调用System.out.println的行,您就可以了。

答案 1 :(得分:0)

printArray()void方法,意味着没有返回值。你不能将没有价值的东西传递给另一种方法。

您已有一行正确调用printArray(),因此请删除此行

System.out.println(Upg9_tenta.printArray(arr));

答案 2 :(得分:0)

println()方法接受参数,那些参数方法将在控制台上打印。 在您的情况下,您调用printArray()方法是void方法。 reference for println() method

返回void,您必须更改printArray()方法的返回类型或从Upg9_tenta.printArray(arr)方法中删除System.out.println()

修改后的代码:

 public class Upg9_tentamain {
        public static void main (String []args){

            int []arr = {1, 3, 8, 6};

            Upg9_tenta.printArray(arr);  // just call method to print array

            //Upg9_tenta.printArray(arr);         

     }
    }