"또한 String.format 방법 에 대해서도 말씀드리고 싶습니다 ."

" String 클래스 의 정적 메서드 이지만 매우 유용합니다. 우회적으로 접근하겠습니다."

"텍스트 한 줄에 여러 변수를 표시해야 한다면 어떻게 하시겠습니까?"

"무슨 문자?"

"예를 들면 다음과 같습니다."

다음 변수가 주어집니다.
String name = "Bender";
int age = 12;
String friend = "Fry";
int weight = 200;
필요한 출력:
User = {name: Bender, age: 12 years, friend: Fry, weight: 200 kg.}

"나는 다음과 같이 할 것입니다."

String name = "Bender";
int age = 12;
String friend = "Fry";
int weight = 200;

System.out.println("User = {name: " + name + ", age: " + age + " years, friend: " + friend + ", weight: " + weight + " kg.}");

"잘 읽히지 않습니까?"

"괜찮은 것 같아."

"하지만 변수 이름이 길거나 데이터를 가져오기 위해 메서드를 호출해야 하는 경우 가독성이 좋지 않을 것입니다."

System.out.println("User = {name: " + user.getName() + ", age: " + user.getAge() + " years, friend: " + user.getFriends().get(0) + ", weight: " + user.getExtraInformation().getWeight() + " kg.}");

"글쎄, 그렇다면, 그래, 읽기 쉽지 않을거야."

"사실 이것은 실제 프로그램에서 항상 발생하므로 String.format 방법으로 삶을 단순화할 수 있는 방법을 보여주고 싶습니다."

"빨리 말해줘, 이게 무슨 마법의 수법이야?"

"위 코드는 다음과 같이 작성할 수 있습니다."

String text = String.format("User = {name: %s, age: %d years, friend: %s, weight: %d kg.}",
user.getName(), user.getAge(), user.getFriends().get(0), user.getExtraInformation().getWeight())

System.out.println(text);

" String.format 메서드의 첫 번째 매개변수는 값을 넣을 때마다 특수 문자(%s, %d)를 포함하는 형식 문자열입니다."

"형식 문자열 다음에 %s 및 %d 문자를 대체할 값을 전달합니다."

"문자열을 삽입해야 하는 경우 %s를 쓰고, 숫자가 필요한 경우 %d를 사용합니다."

"예제에서 이것을 보는 것이 더 쉬울 것입니다:"

String s = String.format("a = %d, b = %d, c = %d", 1, 4, 3);
결과:
s는 «a = 1, b = 4, c = 3»과 같습니다.

"네, 아주 편리합니다."

"또한 다음과 같이 할 수도 있습니다."

int a = -1, b = 4, c = 3;
String template;
 if (a < 0)
  template = "Warning! a = %d, b = %d, c = %d";
 else
  template = "a = %d, b = %d, c = %d";

System.out.println(String.format(template, a, b, c) );
산출:
Warning! a = -1, b = 4, c = 3

"음. 정말 유용한 방법이군. 고마워, 엘리."

"포맷 방법과 함께 다른 데이터 유형을 사용하려는 경우 다음 표가 도움이 될 것입니다."

상징 유형
%에스
%디 정수: int, long 등
%에프 실수: float, double
%비 부울
%씨
%티 날짜
%% 백분율 기호 %

"실제로 이러한 형식 지정자에는 고유한 설정과 하위 설정도 있습니다."

"하지만 시작하기에 충분합니다. 그렇지 않은 경우 공식 문서에 대한 링크는 다음과 같습니다."

추가 자료 링크