[설명]
한 개의 문자열을 입력받고, 특정 문자를 입력받아 해당 특정문자가 입력받은 문자열에 몇 개 존재하는지 알아내는 프로그램을 작성하세요.
대소문자를 구분하지 않습니다.문자열의 길이는 100을 넘지 않습니다.
[입력]
첫 줄에 문자열이 주어지고, 두 번째 줄에 문자가 주어진다.
문자열은 영어 알파벳으로만 구성되어 있습니다.
[출력]
첫 줄에 해당 문자의 개수를 출력한다.
[예시]
[문제 풀이]
import java.util.*;
class Main {
public int solution(String str, char t) {
int answer = 0;
str = str.toUpperCase();
t = Character.toUpperCase(t);
/* for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) == t) answer++;
} */
for (char x : str.toCharArray()) {
if (x == t) answer++;
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.next();
char c = kb.next().charAt(0);
System.out.print(T.solution(str, c));
}
}
Scanner
변수를 두 개 선언하여 문자열, 문자를 입력 받는다.
c
변수는 문자열이 아닌 문자 ‘한 개’ 이기 때문에 charAt()
메소드를 써서 인덱스로 접근하여 문자를 받아올 수 있게 한다.
Scanner
를 쓸 때, next()
메소드는 문자열을 대상으로 쓰는 메소드이다.charAt()
을 써서 인덱스로 접근!