1. 문자 찾기
charAt(int index)
개념
- String 클래스의 메서드
- 문자열에서 특정 위치에 있는 문자 하나를 반환
- 문자열을 하나씩 분리해서 처리할 때 자주 사용
문법
char ch = string.charAt(index);
동작 방식
- index는 0부터 시작하며, string에서 해당 위치의 문자를 반환
- 예를 들어, "hello".charAt(1)은 'e'를 반환
- index가 문자열의 길이보다 크면 StringIndexOutOfBoundsException 오류가 발생
toLowerCase()
개념
- String 클래스의 메서드
- 문자열 내의 모든 문자를 소문자로 변환한 새로운 문자열을 반환
- 대소문자 구분이 없는 검색을 할 때 유용
- toUpperCase() 메서드와 함께 사용하여 문자열을 표준화하거나 비교 작업을 쉽게 가능
문법
String lower = string.toLowerCase();
동작 방식
- toLowerCase()는 String 객체에 속한 모든 대문자를 소문자로 변환하여 반환
- 원래 문자열 자체는 변경되지 않고, 소문자로 변환된 새로운 문자열을 반환
- 예를 들어, "HELLO".toLowerCase()는 "hello"를 반환
// toLowerCase() 메서드: String 클래스의 메서드,
// char는 기본 자료형(primitive type)으로 String과 달리 메서드를 가질 수 없다
string = string.toLowerCase();
// String 클래스의 toLowerCase() 메서드를 사용하여 string의 모든 문자를 소문자로 변환
target = Character.toLowerCase(target);
// Character 클래스의 toLowerCase(char ch) 메서드를 사용하여 char 타입의 target 문자를 소문자로 변환
// target: char 타입; 기본 자료형(primitive type)
// char 타입은 객체가 아니라 값 자체로 존재하기 때문에 메서드(.toLowerCase())를 직접 사용할 수 없다
for-each
개념
- 배열이나 Iterable 컬렉션의 모든 요소를 순차적으로 접근할 때 사용하는 간결한 반복문
- 배열이나 List, Set 등 컬렉션 요소를 하나씩 처리할 때 유용
- 내부 인덱스가 필요하지 않은 경우, 코드 가독성 향상
- 배열뿐 아니라 문자열을 toCharArray() 메서드로 문자 배열로 변환하여 for-each 구문으로 각 문자에 접근하는 경우도 많음
문법
for (ElementType element : arrayOrCollection) {
// element를 사용한 작업 수행
}
동작 방식
- for-each 구문은 배열 또는 컬렉션의 첫 번째 요소부터 마지막 요소까지 자동으로 반복
- for 루프처럼 인덱스를 사용하지 않고, 각 요소를 직접 사용할 수 있어 가독성이 높아짐
- 예를 들어, int[] numbers = {1, 2, 3}가 있을 때 for (int number : numbers)를 사용하면 각 숫자를 number 변수에 할당하여 반복문을 실행
// 확장 for 문에서 : 뒤는 배열 또는 컬렉션만 가능
// toCharArray() 로 string 문자 하나하나 분리해서 문자 배열을 만들어야함
for(char t : string.toCharArray()) {
if (t == target) answer++;
}
2. 대소문자 변환
'Algorithm' 카테고리의 다른 글
자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 - 01 guide (0) | 2024.10.31 |
---|