강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

안녕하세요 9번 숫자만 추출문제 질문이 있습니다.

작성

·

244

0

import java.util.Scanner;

class Main {

    public int solution(String s) {

        int answer = 0;

        for(char x : s.toCharArray()){

            //숫자이면 --> 문자 0이 48이고 문자 9가 57임.

            if(x >= 48 && x <= 57) answer += answer * 10 + (x-48);

        }

        return answer;

    }

    public static void main(String[] args) {

        Main T = new Main();

        Scanner kb = new Scanner(System.in);

        String str = kb.next();

        System.out.println(T.solution(str));

    }

}

안녕하세요 강사님 수업 잘 듣고있습니다.^^

위와 같이 9번 문제를 구현했으나 if문 안으로는 문자로 인식되어서 조건문 안에 들어오는데

출력되는 결과값이 문자인 숫자 아스키 코드 값이 아닌 숫자 자체 값이 나와버리는데 

제가 어떤 실수를 한게 있는지 여쭤보고 싶습니다.!

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

answer에 누적하시면 안됩니다.

아래와 같이 하세요.

if(x >= 48 && x <= 57) answer = answer * 10 + (x-48);

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기