当我尝试编译时:
import java.awt.* ;
class obj
{
public static void printPoint (Point p)
{
System.out.println ("(" + p.x + ", " + p.y + ")");
}
public static void main (String[]arg)
{
Point blank = new Point (3,4) ;
System.out.println (printPoint (blank)) ;
}
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
obj.java:12: 'void' type not allowed here
System.out.println (printPoint (blank)) ;
^
1 error
Run Code Online (Sandbox Code Playgroud)
我真的不知道如何开始询问这个问题而不是问:
Jus*_*ier 14
如果方法返回void则没有要打印的内容,因此出现此错误消息.由于printPoint已将数据打印到控制台,因此您应该直接调用它:
printPoint (blank);
Run Code Online (Sandbox Code Playgroud)
And*_*are 13
您正在尝试打印其结果printPoint不返回任何内容.您需要更改代码以执行以下两项操作之一:
class obj
{
public static void printPoint (Point p)
{
System.out.println ("(" + p.x + ", " + p.y + ")");
}
public static void main (String[]arg)
{
Point blank = new Point (3,4) ;
printPoint (blank) ;
}
}
Run Code Online (Sandbox Code Playgroud)
或这个:
class obj
{
public static String printPoint (Point p)
{
return "(" + p.x + ", " + p.y + ")";
}
public static void main (String[]arg)
{
Point blank = new Point (3,4) ;
System.out.println (printPoint (blank)) ;
}
}
Run Code Online (Sandbox Code Playgroud)