Java에서 문자열을 순회하는 방법은 크게 3가지가 있다.
- Enhanced(향상된) for문
- 인덱스를 활용한 for문
- Stream 변환 후 forEach
- Enhanced for문
String str = "Hello World";
for (char c : str.toCharArray()) {
System.out.print(c);
}
//출력
Hello World
Enhanced for문은 for-each문이라고도 부른다.
코드가 간결해지는 효과가 있지만 배열 혹은 Iterable 인터페이스를 구현한 객체여야 사용할 수 있다.
문자열은 Iterator가 존재하지 않으므로 배열로 변환하여 사용한다.
- 인덱스를 활용한 for문
String str = "Hello World";
for (int i = 0; i < str.length(); i++) {
System.out.print(str.charAt(i));
}
//출력
Hello World
익히 알고 있는 for문의 모습이다.
문자열이 곧 배열이라고는 하나 chatAt 메서드로 접근해야 한다는 점만 기억해두자.
- Stream 변환
String str = "Hello World";
str.chars().forEach(c -> System.out.print((char)c));
//출력
Hello World
chars() 메서드를 사용하면 IntStream을 얻을 수 있으니, forEach와 람다 함수를 통해 원하는 구현이 가능할 것이다.
Stream이 무엇인지 모르겠다면 아래 게시글을 참고해주셔도 좋겠다...^^*
'언어 > Java' 카테고리의 다른 글
대소문자를 서로 변환하는 방법 (Java) (0) | 2024.12.19 |
---|---|
대소문자를 판별하는 방법 (Java) (0) | 2024.12.19 |
Spring 프레임워크의 의존성 주입(DI) (0) | 2024.12.15 |
Java Stream의 개념 (1) | 2024.11.29 |
댓글