java - 숫자만 추출(아스키 코드)
728x90
import java.util.Scanner;
public class ExtractOnlyNumber {
public static long solution(String s){
long answer = 0;
for (char x: s.toCharArray()) {
if (x >= 48 && x <= 57) {
answer = answer * 10 + (x - 48);
}
}
return answer;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.next();
System.out.println(solution(s));
}
}
- 하나의 단어를 Scanner를 통하여 입력받는다.
- answer 라는 변수를 0으로 초기화 후 선언 하여 숫자만 추출하여 더해나간다.
- Stirng을 char배열로 for each 돌린다.
- 문자열 숫자는 아스키 코드 48 ~ 57 사이임으로 해당되는 문자열(숫자)만 if문으로 걸러낸다.
- 첫번째 자리가 0 일경우 무시하므로 누적된 answer 를 10을 곱한다음 문자열에서 48을 빼면 원래 의 숫자값이 나온다.
- answer를 리턴한다.
728x90
'Java > java - algorithm' 카테고리의 다른 글
java - 최대 매출(슬라이딩 윈도우) (0) | 2021.07.29 |
---|---|
java - 두배열 합치기(Two pointer) (0) | 2021.07.27 |
java - 임시반장 정하기(배열) (0) | 2021.07.26 |
java - 격자판 최대합 (배열) (0) | 2021.07.25 |
Java - 유효한 팰린드롬 (정규식) (0) | 2021.07.18 |
댓글
이 글 공유하기
다른 글
-
java - 두배열 합치기(Two pointer)
java - 두배열 합치기(Two pointer)
2021.07.27 -
java - 임시반장 정하기(배열)
java - 임시반장 정하기(배열)
2021.07.26 -
java - 격자판 최대합 (배열)
java - 격자판 최대합 (배열)
2021.07.25 -
Java - 유효한 팰린드롬 (정규식)
Java - 유효한 팰린드롬 (정규식)
2021.07.18