
이 문제를 풀면서 계속 헷갈리던 charAt() 메서드에 대해 좀 더 이해할 수 있게 되었다.
처음에는 split() 메서드를 이용하여 풀었지만 charAt()을 써먹어보고 싶어서 다시 한번 더 시도를 하였다.
입력받은 문자열을 charAt()을 사용하여 쪼갠 문자를 정수로 받아 대문자만 추출해준다. (ASCII 65~90)
그 후 추출한 문자를 char 타입으로 형 변환하여 출력한다.
1. split() 사용
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String [] arr = str.split("-");
String [] arr2 = new String [100];
for(int i=0;i<arr.length;i++) {
for(int j=0;j<arr[i].length();j++) {
String A = arr[i];
arr2 = A.split("");
}
System.out.print(arr2[0]);
}
}
}
2. charAt() 사용
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
char ch = '?';
for(int i=0;i<str.length();i++) {
int s = str.charAt(i);
if(s >=65 && s<=90) {
ch = (char)s;
System.out.print(ch);
}
}
}
}
https://www.acmicpc.net/problem/2902
2902번: KMP는 왜 KMP일까?
입력은 한 줄로 이루어져 있고, 최대 100글자의 영어 알파벳 대문자, 소문자, 그리고 하이픈 ('-', 아스키코드 45)로만 이루어져 있다. 첫 번째 글자는 항상 대문자이다. 그리고, 하이픈 뒤에는 반드
www.acmicpc.net
'DEVELOPMENT > ALGORITHM' 카테고리의 다른 글
| [백준 자바 2959번] 거북이 (0) | 2022.02.06 |
|---|---|
| [백준 자바 2783번] 삼각 김밥 (0) | 2022.02.06 |