Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- Join
- 데이터 베이스
- JPA
- LV02
- Java
- docker
- 프로그래머스
- 알고리즘
- 이것이 자바다
- 배열
- mysql
- Til
- 일정관리프로젝트
- LV03
- LV0
- Spring Frame Work
- LV1
- 디자인 패턴
- 연습문제
- LV.02
- SQL
- jpa blog
- Redis
- 포트폴리오
- CoffiesVol.02
- LV01
- 포트 폴리오
- Lv.0
- 네트워크
- 코테
Archives
- Today
- Total
코드 저장소.
[프로그래머스] LV.0 숨어있는 숫자의 덧셈(1) 본문
문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 1,000
- my_string은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다.
입출력 예
my_string | result |
"aAb1B2cC34oOp" | 10 |
"1a2b3c4d123" | 16 |
작성답안
class Solution {
public int solution(String my_string) {
int answer = 0;
String str = my_string
.replaceAll("[^0-9]","");
String[]strArr = new String[str.length()];
strArr = str.split("");
for(int i=0;i<strArr.length;i++){
answer += Integer.parseInt(strArr[i]);
}
return answer;
}
}
푸는 과정
-String 안에 있는 모든 숫자의 합을 return하는 문제이다.
생각한 과정은 이러하다.
1.문자열 안에 있는 숫자를 뽑는다.
->String str = my_string.replaceAll("[^0-9]","");
->여기에서 replaceAll() 메서드는 replaceAll(대상문자열,원하는대로 바꾸는 문자열)으로
대상문자열은 정규식을 활용을 해서 0에서9까지로 정하고 바꾸고 싶은 문자열에는 ""써서
숫자를 제외한 모든 문자를 바꾼다.
2.뽑은 숫자를 배열에 넣고 split()을 사용을 해서 숫자에 ","로 구분짓게 한다.
->String[]strArr = new String[str.length()];
3.뽑은 숫자의 수의 길이만큼 반복문으로 돌린다.
4.반복문을 돌리면서 배열에 있는 숫자를 형변환을 해서 결과값 변수에 넣는다.
-> answer += Integer.parseInt(strArr[i]);
'코테 > JAVA' 카테고리의 다른 글
[프로그래머스] LV.01 최대공약수 최소공배수 (0) | 2023.03.13 |
---|---|
[프로그래머스] LV.1 부족한 금액 계산하기 (0) | 2023.03.13 |
[프로그래머스] LV.01 문자열을 정수로 바꾸기 (0) | 2023.03.08 |
[프로그래머스] LV.01 자릿수 더하기 (0) | 2023.03.08 |
[프로그래머스] LV.01 문자열 내 p와 y의 개수 (0) | 2023.03.08 |