String

1. 문자열 길이 구하기

  • 문자열의 길이를 구하는 방법:

String str = "Hello";
int length = str.length();  // 5

2. 문자열 인덱스 접근

  • 문자열에서 특정 인덱스의 문자 추출 (charAt()):

코드 복사String str = "Hello";
char c = str.charAt(1);  // 'e'

3. 문자열 자르기

  • 문자열의 특정 부분을 추출 (substring()):

String str = "Hello";
String subStr = str.substring(1, 4);  // "ell"
  • 문자열 끝에서부터 추출:

String str = "abcdef";
String lastTwo = str.substring(str.length() - 2);  // "ef"

4. 문자열 비교

  • 문자열을 정확히 비교 (equals()):

String str1 = "abc";
String str2 = "abc";
if (str1.equals(str2)) {
    System.out.println("Strings are equal");
}
  • 대소문자를 무시하고 비교 (equalsIgnoreCase()):

String str1 = "abc";
String str2 = "ABC";
if (str1.equalsIgnoreCase(str2)) {
    System.out.println("Strings are equal (case insensitive)");
}
// 대소문자 변환 가능
String str = "HELLO";
String lowerStr = str.toLowerCase();  // 소문자로 변환
System.out.println(lowerStr);  // 출력: hello

String str2 = "hello";
String upperStr = str2.toUpperCase();  // 대문자로 변환
System.out.println(upperStr);  // 출력: HELLO

5. 문자열 분리하기

  • 특정 구분자로 문자열을 분리 (split()):

String str = "apple,banana,cherry";
String[] fruits = str.split(",");  // {"apple", "banana", "cherry"}
  • 구분자로 자른 후, 제한된 수의 문자열로 분리:

String str = "apple,banana,cherry";
String[] fruits = str.split(",", 2);  // {"apple", "banana,cherry"}

6. 문자열 연결

  • 문자열을 연결하는 방법 (+, concat(), StringBuilder):

String str1 = "Hello";
String str2 = "World";
String result = str1 + " " + str2;  // "Hello World"

String result2 = str1.concat(" ").concat(str2);  // "Hello World"
  • StringBuilder를 사용하여 문자열 효율적으로 연결 (특히 루프 내에서):

StringBuilder sb = new StringBuilder();
sb.append("Hello");
sb.append(" World");
String result = sb.toString();  // "Hello World"

7. 문자열 대체하기

  • 특정 문자열 대체 (replace()):

String str = "apple";
String replaced = str.replace("p", "b");  // "abble"
  • 정규 표현식을 사용해 대체 (replaceAll()):

String str = "a1b2c3";
String replaced = str.replaceAll("\\d", "");  // "abc"

8. 문자열 존재 여부 확인

  • 특정 문자열이 포함되어 있는지 확인 (contains()):

String str = "Hello World";
if (str.contains("World")) {
    System.out.println("Found World");
}
  • 문자열이 특정 값으로 시작하거나 끝나는지 확인 (startsWith(), endsWith()):

String str = "Hello World";
if (str.startsWith("Hello")) {
    System.out.println("Starts with Hello");
}

if (str.endsWith("World")) {
    System.out.println("Ends with World");
}

9. 문자열 트리밍

  • 양쪽 공백 제거 (trim()):

String str = "   Hello World   ";
String trimmed = str.trim();  // "Hello World"

10. 문자열을 문자 배열로 변환

  • 문자열을 문자 배열로 변환 (toCharArray()):

String str = "abc";
char[] chars = str.toCharArray();  // {'a', 'b', 'c'}

11. 문자열을 숫자로 변환

  • 문자열을 정수로 변환 (Integer.parseInt()):

String str = "123";
int num = Integer.parseInt(str);  // 123
  • 문자열을 실수로 변환 (Double.parseDouble()):

String str = "123.45";
double num = Double.parseDouble(str);  // 123.45

12. 숫자를 문자열로 변환

  • 숫자를 문자열로 변환 (String.valueOf()):

int num = 123;
String str = String.valueOf(num);  // "123"

13. 문자열의 첫 문자만 대문자로 만들기

String str = "hello";
String capitalized = str.substring(0, 1).toUpperCase() + str.substring(1);  // "Hello"

14. 문자열을 역순으로 뒤집기

  • StringBuilder를 사용하여 문자열을 뒤집기:

String str = "abc";
String reversed = new StringBuilder(str).reverse().toString();  // "cba"

15. 정규 표현식으로 문자열 검증

  • 문자열이 숫자로만 구성되었는지 확인:

String str = "12345";
if (str.matches("\\d+")) {
    System.out.println("String contains only digits");
}
  • 문자열이 특정 패턴과 일치하는지 확인:

String email = "test@example.com";
if (email.matches("^[A-Za-z0-9+_.-]+@[A-Za-z0-9.-]+$")) {
    System.out.println("Valid email");
}

16. 문자열 포맷팅

  • 문자열에 값을 삽입하여 포맷팅 (String.format()):

int age = 25;
String name = "John";
String formatted = String.format("My name is %s and I am %d years old", name, age);  // "My name is John and I am 25 years old"

17. 문자열 반복

  • 문자열을 특정 횟수만큼 반복:

String repeated = "abc".repeat(3);  // "abcabcabc"

18. 문자열에서 특정 패턴의 시작 인덱스 찾기

  • 문자열에서 특정 문자열의 시작 인덱스 찾기 (indexOf()):

String str = "Hello World";
int index = str.indexOf("World");  // 6
  • 특정 문자열이 마지막으로 나타나는 위치 찾기 (lastIndexOf()):

String str = "ababc";
int index = str.lastIndexOf("ab");  // 2

19. 문자열 비교 결과 반환

  • 문자열을 사전 순으로 비교 (compareTo()):

String str1 = "apple";
String str2 = "banana";
int result = str1.compareTo(str2);  // 음수: str1 < str2

20. 문자열을 빈 값으로 초기화

  • 빈 문자열:

String emptyStr = "";

Last updated