String 클래스의 indexOf()는 입력받은 문자의 위치를 반환해주는 메서드이다.
결과값이 없다면 -1을 반환한다.
String str = "abcde";
str.indexOf('a') = 0;
str.indexOf('c') = 2;
str.indexOf('z') = -1; // 없는 문자는 -1을 반환
아래 문제는 이 특징을 사용하여 풀이하였다.
import java.util.Scanner;
public class Ex03 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
for(char ch = 'a'; ch <= 'z'; ch++) {
System.out.print(str.indexOf(ch) + " ");
}
// 입력: str = dabin
// ch = a -> str.indexOf(a) -> dabin에서 a의 위치 출력 -> 1
// ch = b -> str.indexOf(b) -> dabin에서 b의 위치 출력 -> 2
// ch = c -> str.indexOf(c) -> dabin에서 c의 위치 출력 -> -1
// ch = i -> str.indexOf(d) -> dabin에서 d의 위치 출력 -> 0
// 1 2 -1 0 ...... 과 같은 순서로 출력됨
}
}
'ALGORITHM' 카테고리의 다른 글
재귀 함수 (0) | 2020.12.30 |
---|---|
[백준 2908 Java] 문자열 뒤집기 - StringBuffer / StringBuilder (0) | 2020.12.29 |
[백준 4344 Java] 변수 선언 / 초기화 위치에 따른 변화 + 소수점 n째 자리까지 출력하기 (0) | 2020.12.25 |
[백준 2577 Java] String / char / int 형변환 (0) | 2020.12.23 |
[백준 10951 Java] While문 EOF (0) | 2020.12.23 |