내 풀이
Character클래스의 isDigit 메서드를 활용하여 숫자 판별
public class Main {
public void solution(String s) {
String answer = "";
for (char x : s.toCharArray()) {
if (Character.isDigit(x)) answer+=x;
}
System.out.println(Integer.parseInt(answer));
}
public static void main(String[] args) {
Main T = new Main();
Scanner sc = new Scanner(System.in);
String s = sc.next();
T.solution(s);
}
}
다른 풀이
아스키코드 활용. 48~ 57은 0~9이다.
10을 곱하여 뒤에 숫자를 더하는 방식으로 결과값을 구함.
public class Main2 {
public void solution(String s) {
int answer = 0;
for(char x : s.toCharArray()) {
if (x >= 48 && x <= 57) answer = answer * 10 + (x - 48);
}
System.out.println(answer);
}
public static void main(String[] args) {
Main2 T = new Main2();
Scanner sc = new Scanner(System.in);
String s = sc.next();
T.solution(s);
}
}
'알고리즘 > 인프런_자바코테강의' 카테고리의 다른 글
인프런 11. 문자열 압축(JAVA) (0) | 2022.03.27 |
---|---|
인프런 10. 가장 짧은 문자 거리 (Java) (0) | 2022.03.26 |
8. 유효한 팰린드롬 (0) | 2022.03.25 |
인프런 7. 회문 문자열(JAVA) (0) | 2022.03.25 |
인프런 6. 중복 문자 제거 (Java) (0) | 2022.03.10 |