Programmers
[Java] 프로그래머스 : 이상한 문자 만들기
Woogie
2022. 4. 25. 15:05
📌 문제
https://programmers.co.kr/learn/courses/30/lessons/12930
코딩테스트 연습 - 이상한 문자 만들기
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을
programmers.co.kr
📌 코드
package programmers;
public class Pro_220425 {
//도움 코드
public static void main(String[] args) {
String str = "try hello";
System.out.println(solution(str));
}
public static String solution(String str) {
StringBuilder answer = new StringBuilder(); // 문자를 붙여서 출력하기 위해 StringBuilder 사용
String[] text = str.split(""); // UpperCase, LowerCase 메소드 사용하기 위해 문자열을 split 하여 배열에 임시 저장
int count = 0; // 제한사항에 문자열 전체 길이가 아닌 공백을 기준으로 단어 마다 인덱스 초기화 하려고 count 변수 생성
for (int i = 0; i < str.length(); i++) { // 길이 만큼 반복
if (text[i].equals(" ")) {
count = 0; // 공백이면 count 는 0 으로 초기화
} else {
if (count % 2 == 0) { // count 가 짝수면 해당 인덱스 번째 있는 문자열 값을
count++;
text[i] = text[i].toUpperCase(); // 대문자로 바꿔서 저장
} else { // 그렇지 않으면 소문자로 바꿔서 해당 칸에 저장
count++;
text[i] = text[i].toLowerCase();
}
}
answer.append(text[i]); // 빌더에 배열에 있는 값을 하나씩 저장
}
return answer.toString();
}
}