找不到适合print(int,boolean,char,double)错误的方法?
我试图在同一个println语句中打印(int,boolean,char,double)。
class Test1 { public static void main(String s[]) { int a =5; char c = 'a'; boolean b = true; double d = 12.46; System.out.println(a,b,c,d); /*System.out.println(a); // Here it works fine System.out.println(b); System.out.println(c); System.out.println(d);*/ } }
Test1.java:10:错误:找不到适合println的方法(int,boolean,char,double)
但我不知道为什么会出现这个错误。 当我打印这个在不同的不同声明工作正常。 请解释一下。
PrintStream
的println
方法(其中out
是一个实例)只接受一个参数。 也许你是在考虑使用printf
。
System.out.printf("%d, %b, %c, %f%n", a, b, c, d);
5,真实,a,12.460000
System.out.println("" + a + b + c + d);
您将多个参数传递给println函数,如果将它作为单个参数传递,它应该可以工作。
您不能一次传递多个值到println();
每种数据类型都有各自的方法 。
取消注释您的代码。这是唯一的print
。
System.out.println(a); System.out.println(b); System.out.println(c); System.out.println(d);
println有类似的arg类型
public void println(boolean x) public void println(char x) public void println(int x)...and so on
所以你不能一次传递多个值。或者只是将它们附加到String
System.out.println("" + a + b + c + d);
正如Oli所说,使用println在Java中实现它的方法是将您的值与+连接在一起。 例如:
System.out.println(a + ", " + b + ", " + c + ", " + d);
输出:
5, true, a, 12.46
println
只需要单个参数。 你可以实现这一目标
System.out.println(""+ a + b + c + d );
建议你也看看toString
方法,你需要override
它。