728x90
📌 toCharArray()
해당 문자열을 문자(char) 배열로 변환해주는 메소드
String str = "Hello";
char[] charArray = str.toCharArray();
for (char c : charArray) {
System.out.println(c);
}
// 출력값
H
e
l
l
o
📌 StringBuiler
String에서 '+' 와 같은 연산자를 사용하여 불필요한 새로운 객체를 생성하는 방식에서 벗어나
변경 가능한 StringBuilder 객체를 생성하여 문자열 변경의 성능 향상에 도움을 준다.
생성자
// 기본 생성자
StringBuilder sb = new StringBuilder();
주요 메소드
1. append() : 문자열 추가
StringBuilder sb = new StringBuilder("Hello");
sb.append(" World");
2. insert() : 지정된 위치에 문자열 또는 다른 데이터 삽입
StringBuilder sb = new StringBuilder("123");
sb.insert(1, "abc"); // 결과: "1abc23"
3.delete() : 지정된 범위의 문자열 삭제
StringBuilder sb = new StringBuilder("Hello World");
sb.delete(5, 11); // 결과: "Hello"
4. deleteCharAt() : 특정 위치에 있는 문자를 삭제
StringBuilder sb = new StringBuilder("Hello World");
sb.deleteCharAt(5); // 결과: "HelloWorld"
5. replace() : 지정된 범위의 문자열을 다른 문자열로 대체
StringBuilder sb = new StringBuilder("Hello World");
sb.replace(0, 5, "Hi"); // 결과: "Hi World"
6. reverse() : 문자열 뒤집기
StringBuilder sb = new StringBuilder("Hello");
sb.reverse(); // 결과: "olleH"
7. toString() : StringBuilder 객체를 String으로 변환
StringBuilder sb = new StringBuilder("Hello");
String result = sb.toString();
📌 StringTokenizer
문자열을 구분자를 기준으로 토큰을 분리하는 데 사용하는 클래스
주로 텍스트 파싱이나 특정 형식의 문자열을 분리할 때 유용하다
public class StringTokenizerExample {
public static void main(String[] args) {
String text = "Hello World Java";
StringTokenizer tokenizer = new StringTokenizer(text, " ");
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();
System.out.println(token);
}
}
}
// 출력값
Hello
World
Java
주요 메소드
1. hasMoreTokens() : 반환할 Token이 남아있는지 true/false 형태로 반환
public class HasMoreTokensExample {
public static void main(String[] args) {
String text = "Hello World Java";
StringTokenizer tokenizer = new StringTokenizer(text, " ");
// hasMoreTokens()를 사용하여 다음에 토큰이 있는지 확인하고 출력
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();
System.out.println("다음 토큰이 있음: " + token);
}
// 더 이상 토큰이 없음을 나타내는 메시지 출력
System.out.println("더 이상 토큰이 없습니다.");
}
}
// 출력값
다음 토큰이 있음: Hello
다음 토큰이 있음: World
다음 토큰이 있음: Java
더 이상 토큰이 없습니다.
2. nextToken() : 다음 Token 반환
String token = tokenizer.nextToken();
3. countTokens() : 현재 남아있는 Token의 개수를 반환
public class StringTokenizerExample {
public static void main(String[] args) {
String text = "Hello World Java";
StringTokenizer tokenizer = new StringTokenizer(text, " ");
// countTokens()를 사용하여 남아 있는 토큰의 수를 얻음
int tokenCount = tokenizer.countTokens();
System.out.println("총 토큰 수: " + tokenCount);
}
}
// 출력값
총 토큰 수: 3
📌 Arrays.sort()
Arrays 클래스에서 제공되는 정적 메서드 중 하나, 배열을 정렬하는데 사용
기본 자료형 배열과 객채 배열 모두에 대해 작동함
public class ArraysSortExample {
public static void main(String[] args) {
int[] numbers = {5, 2, 8, 1, 7};
Arrays.sort(numbers);
System.out.println("정렬된 배열: " + Arrays.toString(numbers));
}
}
// 출력값
정렬된 배열: [1, 2, 5, 7, 8]
역순으로 정렬 (=내림차순)
Comparator.reverseOrder()
public class ArraysSortDescendingNumbersExample {
public static void main(String[] args) {
Integer[] numbers = {5, 2, 8, 1, 7};
// Comparator.reverseOrder()를 사용하여 역순으로 정렬
Arrays.sort(numbers, Comparator.reverseOrder());
System.out.println("내림차순으로 정렬된 배열: " + Arrays.toString(numbers));
}
}
// 출력값
내림차순으로 정렬된 배열: [8, 7, 5, 2, 1]
public class ArraysSortExample {
public static void main(String[] args) {
String[] words = {"apple", "banana", "orange", "grape"};
Arrays.sort(words, Comparator.reverseOrder());
System.out.println("역순으로 정렬된 배열: " + Arrays.toString(words));
}
}
// 출력값
역순으로 정렬된 배열: [orange, grape, banana, apple]
📌 charAt(int index)
문자열의 특정 인덱스에 위치한 문자를 반환하는 데 사용
public class CharAtExample {
public static void main(String[] args) {
// 문자열 생성
String str = "Hello, World!";
// 인덱스 3에 위치한 문자 반환
char ch = str.charAt(3);
// 결과 출력
System.out.println("Character at index 3: " + ch);
}
}
// 결과값
Character at index 3: l
1. 역순으로 조회
public class ReverseStringExample {
public static void main(String[] args) {
// 문자열 생성
String str = "Hello, World!";
// 문자열을 뒤에서부터 역순으로 조회하여 출력
for (int i = str.length() - 1; i >= 0; i--) {
char character = str.charAt(i);
System.out.print(character);
}
}
}
// 결과값
!dlroW ,olleH
2. char 타입의 문자를 int 타입의 정수로 변환
String numbers = "123";
// 정수 타입으로 변환
int result1 = numbers.charAt(0) - '0';
int result2 = numbers.charAt(1) - '0';
int result3 = numbers.charAt(2) - '0';
System.out.println("result1 = "+ result1);
System.out.println("result2 = "+ result2);
System.out.println("result3 = "+ result3);
// 출력값
1
2
3
📌 split()
특정 문자열을 파라미터로 받아서 해당 문자열을 기준으로 문자열을 자르는 역할
public static void main(String[] args) {
String str = "Hello World";
String[] arr = str.split("");
for(int i=0; i<arr.length; i++) {
System.out.println(arr[i]);
}
}
// 출력값
H
e
l
l
o
W
o
r
l
d
📌 Math.pow()
주어진 밑(base)의 거듭제곱을 계산하는 데 사용된다.
Math.pow(a, b) 는 a(base)의 b(exponent)승을 계산하여 반환한다.
double result = Math.pow(2, 3); // 결과는 8.0
int intResult = (int) result; // int로 형변환하면 8
📌 startsWith() / endsWith()
startsWith : 주어진 문자열이 특정 접두사로 시작하는지 여부 확인
endsWIth : 주어진 문자열이 특정 접미사로 끝나는지 여부 확인
주의할 점 ) 둘 다 true/ false로 반환 / 공백도 취급
String str = "Hello, World!";
// endsWith 예제
boolean endsWithWorld = str.endsWith("World!");
System.out.println(endsWithWorld); // 출력: true
계속 추가될 예정입니다 : )
728x90
'Algorithm' 카테고리의 다른 글
[inflearn] 피보나치 수열 (0) | 2024.01.10 |
---|---|
✨ 알고리즘 문제 풀이 꿀팁 (0) | 2024.01.03 |
[프로그래머스] (181916) 주사위 게임 3 (0) | 2023.12.29 |
[프로그래머스] (181913) 문자열 여러 번 뒤집기 (0) | 2023.12.28 |
[프로그래머스] (181921) 배열 만들기 2 (1) | 2023.12.26 |