본문 바로가기

ALGORITHM

[백준 10809 Java] indexOf()

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 ...... 과 같은 순서로 출력됨
		
	}
	
}