我有一个愚蠢的问题,这个问题非常模糊,解释得很差,而且对于我来说完全独特的一个非常具体的任务,使这个线程对其他任何人都没用。请删除。
答案 0 :(得分:1)
您的问题是您未正确使用Console.printf()
方法。
此方法的第一个参数应该是格式,并且必须在其中包含其他参数的占位符。在The Java Platform documentation中阅读它。实际上,您应该熟悉Java平台文档。您需要经常使用它来确保您正确地调用方法或在给定的类中使用哪些方法。
因此,您的打印输出行应该是:
myConsole.printf("Circumference of first circle is %.2f%n", first.Circumference());
myConsole.printf("Area of first circle is %.2f%n", first.Area());
...等
格式%.2f
表示"相应的参数是浮点数。在小数点后面以2位数的精度显示它"。 %n
替换了您的"\n"
- 整个"模板"打印应该只是格式字符串。在这种格式中,应使用%n
代替\n
。
我不确定你为什么选择使用系统控制台而不是通常的System.out.println()
。如果您选择使用System.out
,那么还有一个printf()
方法与Console.printf()
完全相同 - 第一个参数是格式,其他参数嵌入其中。
最后一条评论:编写Java代码时存在约定: