PrintStream类型中的println(boolean)方法不适用于参数(void)

时间:2017-04-16 10:34:26

标签: java

尝试执行以下代码时出错:

package Abc;

public class Class3 {

    public void another() {
        System.out.println("Hello World");
    }

    public static void main(String[] args) {
        Class3 obj1 = new Class3();
        System.out.println(obj1.another());
    }

}

错误是:

The method println(boolean) in the type PrintStream is not applicable for the arguments (void)

8 个答案:

答案 0 :(得分:2)

你的另一个()函数返回类型是'void',它基本上表示它被定义为什么都不返回。

package Abc;

public class Class3 {
    public void another() {
       System.out.println("Hello World");
    }

   public static void main(String[] args) {
    Class3 obj1 = new Class3();
    obj1.another();
    }

}

答案 1 :(得分:0)

你不能在void中调用一个返回System.out.println()的方法你可以这样称呼它:

public static void main(String[] args) {
      Class3 obj1 = new Class3();
      obj1.another();
}

由于System.out.println(T);不接受空格,因此接受ObjectStringintbooleanchar,{{1} },char[]doublefloat

答案 2 :(得分:0)

你的另一种方法的返回类型为“void”,所以基本上它不会返回任何内容。所以你不能打印任何东西。如果你想让你的代码工作,你只需要调用obj1.another()。 Whitout System.out.println()方法。

答案 3 :(得分:0)

你想打印字符串(“Hello World”)? 您可以使用IDE工具来帮助您轻松解决问题; 你不能打印两次,你需要退货。 像这样改变

package Abc;

public class Class3 {
 public String another(){
     return "Hello World";



 }
    public static void main(String[] args) {
        Class3 obj1 = new Class3();
        System.out.println(obj1.another());

    }

}

答案 4 :(得分:0)

我们可以调用 System.out.println(boolean)中的任何函数,它返回任何Object,String,int,boolean,char,char [],double,float,long value。

PrintStream类型中的println(boolean)方法不适用于任何具有void返回类型的函数。

package Abc;

public class Class3 {
 public String another(){
     return "Hello World";



 }
    public static void main(String[] args) {
        Class3 obj1 = new Class3();
        System.out.println(obj1.another());

    }

}

它将起作用,因为它返回String类型值而不是void。

答案 5 :(得分:0)

package Abc;

public class Class3 {
    public static void another(){
        System.out.println("Hello World!");
    }
    public static void main(String[] args) {
        another();
    }
}

这就是你所要做的一切,我甚至不知道如果没有another()是静态的,它是如何运行的。

答案 6 :(得分:-1)

Println()函数在您的方法没有返回任何内容时期望某些东西。这就是你收到错误的原因。

答案 7 :(得分:-2)

它只是jdk 1.8的功能(不是大问题) 为了从您的项目中删除此错误,只需将jdk从1.8降级到1.7,它将开始正常运行。

步骤: 1.右键单击项目/存储库 2.单击属性 3.单击Java编译器 4.从下拉列表中选择jdk 1.7 5.单击“应用并关闭”按钮

您已完成,它将重建项目,您一切顺利。谢谢。

enter image description here