Java 我需要让这段代码正常工作,但无法找出错误所在。这是一个System.out.format()问题
我似乎无法将此代码格式化。我不断地发现这个错误:Java 我需要让这段代码正常工作,但无法找出错误所在。这是一个System.out.format()问题,java,system.out,Java,System.out,我似乎无法将此代码格式化。我不断地发现这个错误: Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method format(String, Object[]) in the type PrintStream is not applicable for the arguments (String, int, double) at org.line
Exception in thread
"main" java.lang.Error: Unresolved compilation problem:
The method format(String, Object[]) in the type PrintStream is not applicable
for the arguments (String, int, double) at
org.lineware.learningjava.Root2.main(Root2.java:9)
代码如下:
public class Root2 {
public static void main(String[] args) {
int i = 2;
double r = Math.sqrt(i);
System.out.format("The square root of %d is %f.%n", i, r);
}
}
Java5中添加了变量参数(varargs)。在此之前,您尝试使用的格式(..)
方法被声明为
public PrintStream format(String format, Object[] args) {
public PrintStream format(String format, Object... args) {
换句话说,它需要一个对象数组。自Java5以来,该方法声明为
public PrintStream format(String format, Object[] args) {
public PrintStream format(String format, Object... args) {
使用。您可能使用的编译器版本低于Java 5。您使用的是哪种Java版本?您似乎有版本控制问题。你是在IDE中编写代码吗?我解决了这个问题,但多亏了你让我自己仔细检查。如果你能回答这个问题。我相信你。我只是转到properties>java编译器,将jdk遵从性更改为1.7。当时是1.2。太棒了,当我遇到ide错误时,我很恼火。我是所有。我知道这是对的。@user3456442是的,你会认为他们会默认为最新版本。在任何情况下,现在您知道了,您应该能够将其设置为任何未来项目的默认设置。我最近更改了我的工作区,以便可以使用github for windows。我想它也改变了我所有的设置。