2014-11-22 87 views
0

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

在我的代码中,我收到以下消息: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++; 

    } 
} 
} 

我的主:

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

printArray回报void,所以你不能真正打印出它的返回值。

只需删除该方法的行System.out.println,你应该没问题。

0

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

您已经拥有了正确调用printArray()一条线,所以删除此行

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

println()方法接受的参数,这些参数的方法将打印在控制台。 你的情况你打电话printArray()方法是void方法。 reference for println() method

它返回void,你必须printArray()方法要么改变返回类型或System.out.println()方法去除Upg9_tenta.printArray(arr)

修改代码:

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);   

    } 
    }