我只想用Javas printf方法测试一下。自从我上次使用它以来已经有一段时间了,所以也许现在这是正常行为。
此代码摘自http://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html和维基百科。
问题是,它不会运行。
import java.util.Calendar;
public class TestPrintf {
public static void main(String[] args) {
System.out.printf("%s, %s", "Hello", "World!");
// Writes a formatted string to System.out.
System.out.format("Local time: %tT", Calendar.getInstance());
// -> "Local time: 13:34:18"
}
}
导致
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
The method printf(Locale, String, Object[]) in the type PrintStream is not applicable for the arguments (String, String, String)
The method format(String, Object[]) in the type PrintStream is not applicable for the arguments (String, Calendar)
at TestPrintf.main(TestPrintf.java:7)
我在Ubuntu上使用Eclipse Version:Mars.2 Release(4.5.2),Java版本为1.8.0_74。
我知道它曾经以这种方式工作,但现在我必须提供一个包含变量的数组?如果我想格式化字符串和整数的混合怎么办?现在真的需要具有混合类型的Object []吗?
有必要了解为何需要/已更改。