Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java에서 문자열의 각 단어 첫 글자를 출력하는 방법

Java의 String 클래스는 문자열을 표현하는 데 사용됩니다. Java 프로그램에 등장하는 모든 문자열 리터럴은 String 클래스의 인스턴스로 구현됩니다. 또한 문자열은 상수(constant)로 취급되며, 한 번 생성되면 그 값을 변경할 수 없습니다. 이러한 특성을 불변(immutable)이라고 합니다.

문자열에서 각 단어의 첫 글자만 추출해 출력하고 싶다면, 문자열을 문자 배열로 변환한 뒤 공백을 기준으로 단어의 시작 위치를 판별하는 간단한 로직을 활용할 수 있습니다.

예제 코드

public class FirstCharacterPrintTest {
    public static void main(String[] args) {
        String str = "Welcome To Tutorials Point";
        char c[] = str.toCharArray();
        System.out.println("각 단어의 첫 글자:");
        for (int i = 0; i < c.length; i++) {
            // 문자열에서 각 단어의 첫 글자를 추출하는 로직
            if(c[i] != ' ' && (i == 0 || c[i-1] == ' ')) {
                System.out.println(c[i]);
            }
        }
    }
}

코드 설명

toCharArray() 메서드는 문자열을 문자 배열(char 배열)로 변환합니다. 이후 반복문을 돌면서 다음 두 조건을 동시에 만족하는 문자만 출력합니다.

  • 현재 문자가 공백이 아니어야 합니다.
  • 현재 문자가 문자열의 맨 앞이거나(i == 0), 바로 앞 문자가 공백이어야 합니다(c[i-1] == ' '). 즉, 새로운 단어의 시작 지점이라는 의미입니다.

이 조건을 통해 문장 내 모든 단어의 첫 글자만 정확히 걸러낼 수 있습니다.

실행 결과

각 단어의 첫 글자:
W
T
T
P

위 실행 결과에서 볼 수 있듯이, "Welcome To Tutorials Point"라는 문장에서 각 단어의 첫 글자인 W, T, T, P가 순서대로 출력됩니다. 이 방식은 split() 없이도 공백 기준으로 단어를 구분할 수 있어, 간단한 문자열 처리 작업에 유용하게 활용됩니다.