Java에서 문자열의 첫 글자를 대문자로 바꾸는 방법

Payel Ganguly 2023년10월12일
  1. toCharArray()메서드와 연결된 upperCaseFirst()를 사용하여 문자열의 첫 글자를 대문자로 표시
  2. toUpperCase()appendTail()메서드를 사용하여 문자열의 첫 글자를 대문자로
  3. String.substring()을 사용하여 문자열의 첫 글자를 대문자로
  4. capitalize()함수와 함께String.substring()메서드를 사용하여 문자열의 첫 글자를 대문자로
Java에서 문자열의 첫 글자를 대문자로 바꾸는 방법

이 튜토리얼에서는 Java를 사용하여 문자열의 첫 글자를 대문자로 표기하는 방법을 소개합니다. 주어진 문자열 값의 첫 글자를 대문자로 변환하는 데 사용되는 몇 가지 일반적인 방법이 있습니다. 다른 메서드는toCharArray(),toUpperCase()appendTail()메서드와 함께 upperCaseFirst(),String.substring()메서드 및capitalize()함수와String. substring()메서드. 예제를 통해 각 메서드 구현에 대해 논의하겠습니다.

toCharArray()메서드와 연결된 upperCaseFirst()를 사용하여 문자열의 첫 글자를 대문자로 표시

이 과정에서 문자열 값을 받아 문자 배열로 변환하는upperCaseFirst()메소드를 소개합니다. 그런 다음Character 클래스와toUpperCase()메서드를 사용하여 문자 배열의 첫 번째 요소를 대문자로 표시합니다. 결론적으로, 우리는String Constructor를 사용하여 업데이트 된 문자 배열을 문자열로 변환합니다. 아래 예를 따르십시오.

import java.io.*;
import java.lang.*;
import java.util.*;

public class Main {
  public static String upperCaseFirst(String val) {
    char[] arr = val.toCharArray();
    arr[0] = Character.toUpperCase(arr[0]);
    return new String(arr);
  }

  public static void main(String[] args) {
    String val1 = "java";
    String val2 = "advanced java";

    String output = upperCaseFirst(val1);
    System.out.println(val1);
    System.out.println(output);

    output = upperCaseFirst(val2);
    System.out.println(val2);
    System.out.println(output);
  }
}

출력:

java
Java
advanced java
Advanced java

toUpperCase()appendTail()메서드를 사용하여 문자열의 첫 글자를 대문자로

그 과정에서toUpperCase()appendTail()의 두 가지 다른 메소드가 등장합니다. 단일 애플리케이션 내에서이 두 가지 메서드를 구현하기 위해regex.Matcherregex.Pattern 패키지를 가져옵니다. 아래 예에서 이에 대해 자세히 설명합니다.

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
  public static void main(String[] args) {
    String str = "hello world!";
    System.out.println(str);
    StringBuffer strbf = new StringBuffer();
    Matcher match = Pattern.compile("([a-z])([a-z]*)", Pattern.CASE_INSENSITIVE).matcher(str);
    while (match.find()) {
      match.appendReplacement(strbf, match.group(1).toUpperCase() + match.group(2).toLowerCase());
    }
    System.out.println(match.appendTail(strbf).toString());
  }
}

출력:

hello world!
Hello World!

String.substring()을 사용하여 문자열의 첫 글자를 대문자로

주어진 문자열의 첫 글자를 대문자로 바꾸는 가장 간단하고 쉬운 트릭은String.substring()메소드를 사용하는 것입니다. 아래 예에서 논의하겠습니다.

import java.util.*;

public class Main {
  public static void main(String[] args) {
    String str = "java";
    String firstLtr = str.substring(0, 1);
    String restLtrs = str.substring(1, str.length());

    firstLtr = firstLtr.toUpperCase();
    str = firstLtr + restLtrs;
    System.out.println("The modified string is: " + str);
  }
}

출력:

The modified string is: Java

위의 예에서는 하나의 문자열 변수str을 만들었습니다. 그런 다음str에서 두 개의 하위 문자열을 형성했습니다. 여기서firstLtr은 문자열의 첫 번째 문자를 나타내고restLtrs는 문자열의 나머지 문자를 나타냅니다. 결론 부분에서는toUpperCase()메서드를 사용하여firstLtr을 대문자로 변환하고string 자체를 형성하는 두 개의 하위 문자열을 결합했습니다.

capitalize()함수와 함께String.substring()메서드를 사용하여 문자열의 첫 글자를 대문자로

이 마지막 예제에서는 기능적인capitalize()를 사용하여 주어진stringString.substring()메서드를 사용하기 전에 적어도 하나의 문자가 있는지 확인합니다.

import java.util.*;

public class Main {
  public static String capitalize(String str) {
    if (str == null || str.isEmpty()) {
      return str;
    }
    return str.substring(0, 1).toUpperCase() + str.substring(1);
  }

  public static void main(String[] args) {
    String str = "hello world!";
    String firstLtr = str.substring(0, 1);
    String restLtrs = str.substring(1, str.length());

    firstLtr = firstLtr.toUpperCase();
    str = firstLtr + restLtrs;
    System.out.println("The modified string is: " + str);
  }
}

출력:

The modified string is: Hello world!

관련 문장 - Java String