Menu
Coddy logo textTech

StringBuilder 기초

Coddy Java 여정의 논리와 흐름 섹션에 포함된 레슨 — 59개 중 44번째.

StringBuilder는 가변(수정 가능한) 문자열을 생성하는 데 사용됩니다. 문자열을 여러 번 수정해야 할 때 일반 String 연결보다 더 효율적입니다.

초기 텍스트로 StringBuilder를 생성하세요:

StringBuilder sb = new StringBuilder("Hello");

append()를 사용하여 더 많은 텍스트 추가:

sb.append(" World");

위의 코드를 실행한 후, sb에는 다음이 포함됩니다:

Hello World

insert()를 사용하여 특정 위치에 텍스트를 추가해 보겠습니다:

StringBuilder sb = new StringBuilder("Java");
sb.append(" is");      // 끝에 추가
sb.insert(0, "Hey ");  // 위치 0(시작)에 추가

위 코드를 실행한 후, sb 는 다음을 포함합니다:

Hey Java is

StringBuilder를 String으로 변환하기:
결과를 String으로 반환하거나 저장해야 할 때, toString()을 사용하세요:

StringBuilder sb = new StringBuilder("Hello");
sb.append(" World");

String result = sb.toString();  // String으로 변환
System.out.println(result);     // 출력: Hello World

toString()을 왜 사용하나요? String 타입을 반환하는 메서드는 StringBuilder를 직접 반환할 수 없습니다 - 먼저 toString()을 사용하여 변환해야 합니다.

challenge icon

챌린지

쉬움

buildPhrase라는 이름의 메서드를 생성하세요. 이 메서드는 세 개의 인수를 받습니다:

  1. 문구의 시작 부분을 위한 String (start)
  2. 중간 부분을 위한 String (middle)
  3. 끝 부분을 위한 String (end)

메서드는 다음을 수행해야 합니다:

  1. start 문자열로 StringBuilder를 생성하세요
  2. 공백과 middle 문자열을 추가하세요
  3. 공백과 end 문자열을 추가하세요
  4. 끝에 느낌표를 추가하세요
  5. 최종 문자열을 반환하세요

반환 메시지는 다음과 같아야 합니다:

  • 입력 중 하나라도 null인 경우: return "Invalid input"
  • 성공적인 작업의 경우: 구축된 문구를 반환하세요

치트 시트

StringBuilder은 가변 문자열을 생성하는 데 사용되며, 여러 번의 수정 시 String 연결보다 효율적입니다.

초기 텍스트로 StringBuilder를 생성하세요:

StringBuilder sb = new StringBuilder("Hello");

append()를 사용하여 끝에 텍스트를 추가하세요:

sb.append(" World");

insert()를 사용하여 특정 위치에 텍스트를 삽입하세요:

sb.insert(0, "Hey ");  // 위치 0(시작)에 추가합니다

StringBuilder를 String으로 변환하세요:

String result = sb.toString();

직접 해보기

import java.util.Scanner;

public class Main {
    public static String buildPhrase(String start, String middle, String end) {
        // 여기에 코드를 작성하세요
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String start = scanner.nextLine();
        String middle = scanner.nextLine();
        String end = scanner.nextLine();
        
        if (start.equals("null")) start = null;
        if (middle.equals("null")) middle = null;
        if (end.equals("null")) end = null;
        
        System.out.println(buildPhrase(start, middle, end));
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리와 흐름의 모든 레슨