🎯 기본 문자열 연산
1
2
3
4
5
6
7
8
9
10
|
// 1. 기본 문자열 연산
String str = "Hello";
// 문자열 길이
str.length();
// 문자 접근
str.charAt(index);
// 부분 문자열
str.substring(start, end);
// 문자열 비교
str.equals(anotherStr);
|
cs |
🎯 문자열 변환
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
// 2. 문자열 변환
String str = "Hello";
// 문자 배열로 변환
str.toCharArray();
// 문자열 분리
str.split(regex);
// 문자열 합치기
String delimiter = ", ";
String[] elements = {"apple", "banana", "cherry"};
String result = String.join(delimiter, elements);
System.out.println(result);
// 기본 타입 변환
String.valueOf(int);
Integer.parseInt(str);
|
cs |
🎯 문자열 조작
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
// 3. 문자열 조작
String str = "Hello";
// 대소문자 변환
str.toUpperCase();
str.toLowerCase();
// 공백 제거
str.trim();
// 문자열 대체:
str.replace(oldChar, newChar);
str.replaceAll(regex, replacement);
// 문자열 포함 여부
str.contains(seq);
// 문자열 시작 및 끝 확인
str.startsWith(prefix);
str.endsWith(suffix);
|
cs |
🎯 고급 문자열 처리 : StringBuilder
Java에서 문자열을 조작할 때 사용되는 클래스로, 문자열을 추가, 변경, 삭제할 때 더 효율적이고 빠른 성능을 제공합니다.
이는 특히 반복적인 문자열 조작이 필요한 경우에 유용합니다. StringBuilder는 가변 길이의 문자열을 다루기 때문에 String 클래스보다 메모리와 성능 면에서 더 유리합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
// 1. 생성자
// 기본 생성자
StringBuilder sb = new StringBuilder();
// 초기 문자열을 제공하는 생성자
StringBuilder sb = new StringBuilder("initial string");
// 초기 용량을 지정하는 생성자
StringBuilder sb = new StringBuilder(50);
// 2. 추가 (Append)
// 문자열을 추가합니다.
sb.append("hello");
sb.append(" ");
sb.append("world");
System.out.println(sb.toString()); // Output: hello world
// 3. 삽입 (Insert)
// 특정 위치에 문자열을 삽입합니다.
sb.insert(5, "beautiful ");
System.out.println(sb.toString()); // Output: hello beautiful world
// 4. 삭제 (Delete)
// 문자열의 일부를 삭제합니다.
sb.delete(5, 15);
System.out.println(sb.toString()); // Output: hello world
// 5. 변경 (Replace)
// 문자열의 일부를 다른 문자열로 대체합니다.
sb.replace(6, 11, "everyone");
System.out.println(sb.toString()); // Output: hello everyone
// 6. 역순 (Reverse)
// 문자열을 역순으로 변경합니다.
sb.reverse();
System.out.println(sb.toString()); // Output: enoyreve olleh
// 7. 길이 및 용량 (Length and Capacity)
// 길이
int length = sb.length();
// 용량
int capacity = sb.capacity();
// 용량 확장
sb.ensureCapacity(100);
public class StringBuilderExample {
public static void main(String[] args) {
// StringBuilder 생성
StringBuilder sb = new StringBuilder("Hello");
// 문자열 추가
sb.append(" World");
System.out.println(sb); // Output: Hello World
// 문자열 삽입
sb.insert(6, "Beautiful ");
System.out.println(sb); // Output: Hello Beautiful World
// 문자열 삭제
sb.delete(6, 16);
System.out.println(sb); // Output: Hello World
// 문자열 변경
sb.replace(6, 11, "Everyone");
System.out.println(sb); // Output: Hello Everyone
// 문자열 역순
sb.reverse();
System.out.println(sb); // Output: enoyrevE olleH
// 길이 및 용량
System.out.println("Length: " + sb.length()); // Output: Length: 14
System.out.println("Capacity: " + sb.capacity()); // Output: Capacity: 27
// 용량 확장
sb.ensureCapacity(50);
System.out.println("New Capacity: " + sb.capacity()); // Output: New Capacity: 54
}
}
|
cs |
🎯 과제
1) 문자열 뒤짚기
https://school.programmers.co.kr/learn/courses/30/lessons/120822
2) 문자열 다루기
https://school.programmers.co.kr/learn/courses/30/lessons/12918?itm_content=course14743
3) 문자열 정렬하기(1)
https://school.programmers.co.kr/learn/courses/30/lessons/120850
4) 문자열 붙여서 출력하기
https://school.programmers.co.kr/learn/courses/30/lessons/181946
5) 문자열 붙여서 출력하기
https://school.programmers.co.kr/learn/courses/30/lessons/181946
6) 특정 문자 제거
https://school.programmers.co.kr/learn/courses/30/lessons/120826
7) 문자열안에 문자열
https://school.programmers.co.kr/learn/courses/30/lessons/120908
8) 문자열 섞기
https://school.programmers.co.kr/learn/courses/30/lessons/181942
- 문자열안에 문자열
- 특정 문자 제거하기
- 문자열 붙여서 출력하기
'교육 > 알고리즘_기본' 카테고리의 다른 글
📌 깊이 우선 탐색(Depth First Search, DFS) (0) | 2024.08.08 |
---|---|
📌 기본 정렬(선택, 삽입, 버블) (0) | 2024.07.30 |
📌 자료구조 : Set, Map (0) | 2024.07.18 |
📌 재귀함수 (0) | 2024.07.18 |
📌 배열(개념) (0) | 2024.07.11 |