2014-04-17 2 views
0

이 코드를 포맷 할 수없는 것 같습니다. 코드 여기나는이 코드를 작동시킬 필요가 있지만, 무엇이 잘못되었는지 알 수 없다. 그것은 System.out.format() 문제입니다

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); 
    } 
} 
+0

어떤 Java 버전을 사용하고 있습니까? –

+0

나는 버전 8입니다. – user3456442

+0

버전 문제가있는 것 같습니다. IDE에 코드를 작성하고 있습니까? –

답변

2

변수 인수 (변수 인수) 사용하려고 한 format(..) 방법은

로 선언되었다 전에 자바 5에 추가 된이 오류가 계속
public PrintStream format(String format, Object[] args) { 

즉, 개체 배열이 필요합니다. Java 5 이후로이 메소드는 varargs syntax을 사용하여

public PrintStream format(String format, Object... args) { 

으로 선언됩니다. 아마도 Java 5보다 낮은 컴파일러 버전을 사용하고있을 것입니다.

+0

우수, ide 오류가 발생하면 문제가 발생합니다. 나는 모두였다. 나는 이것이 옳다는 것을 안다. – user3456442

+0

@ user3456442 그래, 당신은 그들이 가장 최신 버전으로 기본 설정한다고 생각할 것입니다. 어쨌든 이제 알게되었으므로 향후 프로젝트의 기본값으로 설정할 수 있습니다. –

+0

방금 ​​창에 github을 사용할 수 있도록 최근에 내 작업 영역을 변경했습니다. 나는 그것이 모든 나의 설정을 또한 바꿨다 고 생각한다. – user3456442

관련 문제