최근 자바 알고리즘을 공부하기 시작했다. 물론 파이썬으로 알고리즘 푸는 것이 다른 언어보다 훨씬 빠른 감이 있지만 내 전용 언어를 자바로 선택한 만큼 자바에 대한 문법도 재점검 할 생각이다. 인프런에 김태원 선생님의 인강을 신청하였고 해당 사이트의 알고리즘 문제를 차근차근 풀어보려고 한다.
문제
코드
import java.util.Locale;
import java.util.Scanner;
public 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++;
}
}
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.println(T.solution(str,c));
System.out.println();
// write your code here
}
}
적용 이론
Scanner 관련
Scanner의 경우 new Scanner(System.in)을 통해 Scanner을 사용할 수 있다.
next()의 경우 빈칸 까지를 입력받고 nextLine()의 경우 엔터를 기준으로 입력받는다.
기본으로 문자열을 입력 받기 떄문데 다른 타입을 받고자 한다면 String으로 받고 변환해줘야 한다.