문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
단일 공백으로 구분되는 하나 이상의 단어로 구성되는 문자열 title이 주어지고, 각 단어는 영어로 구성된다.
각 단어의 대소문자를 다음과 같이 변경해서 문자열을 대문자화해라.
대문자화한 title을 반환해라.
#1
Input: title = "capiTalIze tHe titLe"
Output: "Capitalize The Title"
Explanation:
모든 단어는 길이가 3이상이고, 각 문자의 첫 번째 문자를 대문자로, 나머지 문자를 소문자로 한다.
#2
Input: title = "First leTTeR of EACH Word"
Output: "First Letter of Each Word"
Explanation:
단어 "of"는 길이가 2라서, 모두 소문자이다.
나머지 단어는 길이가 3이상이라서, 각 단어의 첫 번째 문자는 대문자이고, 나머지는 소문자이다.
#3
Input: title = "i lOve leetcode"
Output: "i Love Leetcode"
Explanation:
단어 "i"는 길이가 1이라서, 소문자이다.
나머지 단어는 길이가 3이상이라서, 각 단어의 첫 번째 문자는 대문자이고, 나머지는 소문자이다.
class Solution {
public String capitalizeTitle(String title) {
String[] words = title.split(" ");
for(int i = 0; i < words.length; i++){
if(words[i].length() <= 2){
words[i] = words[i].toLowerCase();
}else{
words[i] = words[i].substring(0, 1).toUpperCase() + words[i].substring(1).toLowerCase();
}
}
return String.join(" ", words);
}
}