목차
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12951
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
단어의 맨 앞글자가 숫자가 올수 있다는 점, 공백 다음에는 무조건 대문자여야 한다는 것을 유념하여 코드를 짰다.
class Solution {
public String solution(String s) {
String answer = "";
s = s.toLowerCase();
for(int i=0;i<s.length();i++){
if(((i==0) || (i!=0 && s.charAt(i-1) == ' '))&& s.charAt(i) >= 97) {
answer += (char)(s.charAt(i) - 32);
}
else{
answer += s.charAt(i);
}
}
return answer;
}
}
더 좋은 코드
문자열을 각 문자마다 split 해서 isBlank라는 flag를 이용하면 더 쉽고 간편하게 코드를 구현할 수 있다
class Solution {
public String solution(String s) {
String [] arr = s.toLowerCase().split("");
String answer = "";
boolean isBlank = true;
for(String str : arr){
answer += isBlank ? str.toUpperCase() : str;
isBlank = str.equals(" ") ? true : false;
}
return answer;
}
}
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12951
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
단어의 맨 앞글자가 숫자가 올수 있다는 점, 공백 다음에는 무조건 대문자여야 한다는 것을 유념하여 코드를 짰다.
class Solution { public String solution(String s) { String answer = ""; s = s.toLowerCase(); for(int i=0;i<s.length();i++){ if(((i==0) || (i!=0 && s.charAt(i-1) == ' '))&& s.charAt(i) >= 97) { answer += (char)(s.charAt(i) - 32); } else{ answer += s.charAt(i); } } return answer; } }
더 좋은 코드
문자열을 각 문자마다 split 해서 isBlank라는 flag를 이용하면 더 쉽고 간편하게 코드를 구현할 수 있다
class Solution { public String solution(String s) { String [] arr = s.toLowerCase().split(""); String answer = ""; boolean isBlank = true; for(String str : arr){ answer += isBlank ? str.toUpperCase() : str; isBlank = str.equals(" ") ? true : false; } return answer; } }