programing

Java: printf 문의 리터럴 퍼센트 사인

projobs 2022. 10. 2. 15:08
반응형

Java: printf 문의 리터럴 퍼센트 사인

Java의 printf 스테이트먼트에 실제 퍼센트 기호를 추가하려고 하면 다음과 같은 오류가 나타납니다.

lab1.java:166: illegal escape character
                System.out.printf("%s\t%s\t%1.2f\%\t%1.2f\%\n",ID,pattern,support,confidence);
                                                 ^
lab1.java:166: illegal escape character
                System.out.printf("%s\t%s\t%1.2f\%\t%1.2f\%\n",ID,pattern,support,confidence);
                                                          ^
2 errors

인쇄물에 실제 백분율 기호를 넣는 방법을 알 수 없습니다.탈출할 때 \%로 하면 될 줄 알았는데 안 되네.

좋은 생각 있어요?

퍼센트 부호는 퍼센트 부호를 사용하여 이스케이프됩니다.

System.out.printf("%s\t%s\t%1.2f%%\t%1.2f%%\n",ID,pattern,support,confidence);

완전한 구문은 Java 문서에서 액세스할 수 있습니다.이 정보에 대해서는, 을 참조해 주세요.Conversions첫 번째 링크의

컴파일러에서 오류가 발생하는 이유는 백슬래시 뒤에 오는 문자는 한정되어 있기 때문입니다. %유효한 문자가 아닙니다.

이스케이프 백분율 기호는 두 배(%%)입니다.

System.out.printf("2 out of 10 is %d%%", 20);

Apache Commons Logging 유틸리티에서 StringEscapeUtils를 사용하거나 각 문자의 코드를 사용하여 수동으로 이스케이프를 수행할 수 있습니다.

아래 코드 체크 ---

public class Printer {
   public static void main(String[] args) {
      System.out.printf("2 out of 10 is %d%%", 20);
   }
}

언급URL : https://stackoverflow.com/questions/1708444/java-literal-percent-sign-in-printf-statement

반응형