gimmickbutreal
[프로그래머스/자바] JadenCase 문자열 만들기 - substring 본문
문제 설명
JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고)
문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.
제한 조건
- s는 길이 1 이상 200 이하인 문자열입니다.
- s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다.
입출력 예
s | return |
"3people unFollowed me" | "3people Unfollowed Me" |
"for the last week" | "For The Last Week" |
풀이과정
1. split 메서드를 사용해 여러 개의 문자열로 나눔
2. substring을 사용해 문자열을 자름 (정처기 python 단골 문제처럼)
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
31
32
33
|
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
String[] arr = s.split(" ");
for(int i=0; i<arr.length; i++) {
String now = arr[i];
if(arr[i].length() == 0) {
answer += " "; // 문자가 없을 경우 공백
}
// 문자가 있다면
else {
answer += now.substring(0, 1).toUpperCase();
answer += now.substring(1, now.length()).toLowerCase();
answer += " ";
}
}
if(s.substring(s.length()-1, s.length()).equals(" ")){
return answer;
}
// 맨 마지막 " " 제거 후 반환
return answer.substring(0, answer.length()-1);
}
}
|
cs |
p.s. 다른 분들 풀이를 보니까 StringTokenizer를 사용하는 방안도 좋아보인다.
'Algorithm > Java' 카테고리의 다른 글
[프로그래머스/자바] 피보나치의 수 - Java (0) | 2023.08.01 |
---|---|
[프로그래머스/자바] 이진 변환 반복하기 (0) | 2023.07.28 |
[프로그래머스/자바] 로또의 최고 순위와 최저 순위 - Switch (0) | 2023.07.15 |
[프로그래머스/자바] 공원 산책 - switch (0) | 2023.07.13 |
[프로그래머스/자바] 성격 유형 테스트 - Switch (0) | 2023.07.12 |