내 코드
public String solution(String s) {
String answer = "";
char[] c = s.toLowerCase().toCharArray();
c[0] = Character.toUpperCase(c[0]);
for(int i = 0 ; i< c.length ; i++) {
if(c[i] == ' ') {
c[i+1] = Character.toUpperCase(c[i+1]);
}
answer += c[i];
}
return answer;
}
테스트 8번에서 런타임 에러..
음.. split으로 끊어줘야하나........................................

이 문제는 질문이 78개나 있다.. 다들 비슷한 에러인듯ㅋ큐
다른 사람 코드 참조(감사합니다)
public String solution(String s) {
String answer = "";
String[] str = s.toLowerCase().split("");
boolean bool = true;
for (String ss : str) {
answer += bool ? ss.toUpperCase() : ss;
bool = ss.equals(" ") ? true : false;
}
return answer;
}
1. split으로 문자열은 하나씩 잘라서 String[]담기
2. 일단 첫문자는 무조건 대문자여야 하기 때문에 true
3. 그 다음부턴 삼항연산자로 " "공백이 나오면 대문자로 변환
누가 나 좀 알고리즘으로 돌려줘요
'프로그래머스 > 레벨2' 카테고리의 다른 글
[MySQL] 프로그래머스 레벨2_진료과별 총 예약 횟수 출력하기 (0) | 2023.02.07 |
---|---|
[JAVA] 프로그래머스 레벨2_전화번호 목록 (0) | 2023.01.31 |
[JAVA] 프로그래머스 레벨2_올바른 괄호😀 (1) | 2023.01.28 |
[JAVA] 프로그래머스 레벨2_최솟값 만들기😀 (0) | 2023.01.28 |
[JAVA] 프로그래머스 레벨2_최댓값과 최솟값😀 (0) | 2023.01.28 |