[Java] 문자열에서 숫자 출력 (toCharArray, getNumericValue, charAt)

epiphany·2022년 10월 24일
0

Programmers School

목록 보기
10/22
post-thumbnail

🛫 Programmers School에서 숨어있는 숫자의 덧셈(1) 문제 푸는 과정에서 알게된 개념 정리
(;´д`)ゞ 이번에 조금 어려웠다...

🧩 toCharArray( )

String 문자열을 받아온 후 해당 문자열에서 replaceAll을 사용해서 숫자만 출력
이후 toCharArray 메서드 함수를 사용하여 문자열을 배열 형식으로 저장해서 사용

String s = my_string.replaceAll("[^0-9]","");
char[] test = s.toCharArray();

🧩 getNumericValue( )

문자를 그냥 더하면 아스키 코드 값으로 더해짐
그래서 Chracter.getNumericValue를 사용해서 char형을 int형으로 변환

for (int i=0; i<test.length; i++){
	answer += Character.getNumericValue(test[i]);
}

🧩 charAt( )

문자열을 배열처럼 사용할 수 있도록 도와주는 메서드
string.charAt(index)와 같이 사용할 수 있음

String s = my_string.replaceAll("[^0-9]","");
for (int i=0; i<s.length(); i++){
	answer += Character.getNumericValue(s.charAt(i));
}

📑 코드

toCharArray 배열

class Solution {
    public int solution(String my_string) {
        int answer = 0;
        String s = my_string.replaceAll("[^0-9]","");
        char[] test = s.toCharArray();
        for (int i=0; i<test.length; i++){
            answer += Character.getNumericValue(test[i]);
        }
		return answer;
	}
}

charAt 사용

class Solution {
    public int solution(String my_string) {
        int answer = 0;
        String s = my_string.replaceAll("[^0-9]","");
        for (int i=0; i<s.length(); i++){
            answer += Character.getNumericValue(s.charAt(i));
        }
		return answer;
	}
}

📚 참고

0개의 댓글