[java] 자바-문자열 내에 변수 포함?

좋아, 우리 모두는 다음을 수행하여 변수를 문자열에 포함 할 수 있다는 것을 알아야합니다.

String string = "A string " + aVariable;

다음과 같은 방법이 있습니까?

String string = "A string {aVariable}";

, 따옴표를 닫고 더하기 기호를 추가하지 않아도됩니다. 매우 매력적이지 않습니다.



답변

항상 String.format (….)을 사용할 수 있습니다. 즉,

String string = String.format("A String %s %2d", aStringVar, anIntVar);

그게 당신에게 충분히 매력적일지는 모르겠지만 꽤 편리 할 수 ​​있습니다. 구문은 printf 및 java.util.Formatter와 동일합니다. 특히 표 형식의 숫자 데이터를 표시하려는 경우 많이 사용했습니다.


답변

이를 문자열 보간이라고합니다. Java에는 존재하지 않습니다.

한 가지 방법은 String.format을 사용하는 것입니다.

String string = String.format("A string %s", aVariable);

또 다른 접근 방식은 Velocity 또는 FreeMarker 와 같은 템플릿 라이브러리를 사용하는 것 입니다.


답변

또한 java.text.MessageFormat숫자 인수 인덱스가있는 관련 구문을 사용하는을 고려하십시오 . 예를 들면

String aVariable = "of ponies";
String string = MessageFormat.format("A string {0}.", aVariable);

다음을 string포함합니다.

A string of ponies.

더 일반적으로 클래스는 숫자 및 시간 형식화에 사용됩니다. 여기 에는 JFreeChart레이블 형식화 의 예가 설명되어 있습니다 . 클래스 RCInfo는 게임의 상태 창을 포맷합니다.


답변

문자열 형식을 사용하여 문자열 내에 변수를 포함 할 수 있습니다.

이 코드를 사용하여 문자열에 2 개의 변수를 포함합니다.

String myString = String.format ( “이것은 내 문자열 % s % 2d”, variable1Name, variable2Name);


답변