Java println方法错误

时间:2017-12-14 15:33:41

标签: java

我正在尝试打印某些方法所需的时间。我用

  

double t0 = 0.01 * System.currentTimeMillis();   我有3次这样的一次。   当我像这样打印时:

System.out.println("%7d    %10.7f       %10.7f", amount,
      (t1 - t0), (t2 - t1));

我收到错误:

  

找不到适合println的方法(String,int,double,double)

为什么?该字符串参数来自哪里?

4 个答案:

答案 0 :(得分:2)

您使用的freevars不支持像在程序中一样添加参数。使用System.out.println()代替。{/ p>

答案 1 :(得分:2)

使用此

String string = String.format("%7d    %10.7f       %10.7f", amount,
      (t1 - t0), (t2 - t1));
System.out.println(string);

原因:https://javapapers.com/core-java/system-out-println/

答案 2 :(得分:0)

println(xxx)是类PrintStream(java.io.PrintStream)的重载方法

转到命令提示并输入

javap java.io.PrintStream 

然后你可以看到PrintStream类中存在的所有方法,尝试找到方法“println(String,int,double,double)”,你就找不到这样的方法。

如果要打印多个值,请使用println(java.lang.String) 打印int a = 5的值; int b = 6;

System.out.println(a+" "+b);

+运算符正在执行字符串连接,并且()中的整个表达式被视为字符串。

你也可以在java中使用print(),它的行为与c中的print()相同。 是System.out.print(XXX); ,它也是重载方法。

答案 3 :(得分:0)

代替此声明-:

System.out.println("%7d    %10.7f       %10.7f", amount,
      (t1 - t0), (t2 - t1));

使用--连接以获取输出

System.out.println("%7d    %10.7f       %10.7f"+ amount+
      (t1 - t0)+ (t2 - t1));