Java编译报错no suitable method found for println(String,double)如何解决?
报错原因
- 你调用的
System.out.println()所属的java.io.PrintStream类,所有println重载方法仅支持0个或1个入参,不存在可以同时接收String和double两个参数的重载版本,和你传入的2个参数长度不匹配,因此触发编译错误,报错信息里的「实际参数列表与形式参数列表长度不一致」就是这个原因。
修复方案
有两种常用的修复方式:
方式1:使用printf()方法直接输出格式化内容
System.out.printf()原生支持多参数格式化输出,只需要把println改成printf即可,如果需要和原println一样输出后自动换行,在格式化字符串末尾加上%n即可:
System.out.printf("The health is %.2f%n", kiloliters);
方式2:先格式化字符串再传入println
如果你需要保留println的调用逻辑,可以先用String.format()完成字符串格式化,再把生成的字符串传给println:
System.out.println(String.format("The health is %.2f", kiloliters));
内容的提问来源于stack exchange,提问作者KimchiPunisher
相关产品推荐
相关产品推荐

