문제 : 문자열을 입력받아 연속된 한자리 홀수 숫자 사이에 ‘-‘를 추가한 문자열을 리턴
public class Solution {
public String insertDash(String str) {
if (str.length() == 0) return null;
String result = "" + str.charAt(0);
for (int i = 1; i < str.length(); i++) {
int prev = Character.getNumericValue(str.charAt(i - 1));
int curr = Character.getNumericValue(str.charAt(i));
if (prev % 2 != 0 && curr % 2 != 0) {
result = result + '-';
}
result = result + str.charAt(i);
}
return result;
}
}
흐름
- 빈배열은 null리턴
- 변수 선언 (결과를 담을 result)
- 연속되는 홀수를 찾음 3-1. 이전과 지금 문자열이 홀수인지 확인할 변수 선언
- 홀수 사이에 ‘-‘추가
charAt(): String타입을 char타입으로 변환할 때 사용 Character.getNumericValue(): 숫자 형태의 char형을 int형으로 변환
PREVIOUS[JAVA] 백준 10871 (X보다 작은 수)