개발 공부

프로그래머스 이상한 문자 만들기 Java 본문

코딩 테스트

프로그래머스 이상한 문자 만들기 Java

hyecozy 2022. 7. 30. 19:57

https://school.programmers.co.kr/learn/courses/30/lessons/12930

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. 한 단어 안에서 홀수 번째 알파벳은 소문자, 짝수 번째 알파벳은 대문자 (인덱스 기준)

2. 공백을 기준으로 한 단어가 끝남

 

class Solution {
    public String solution(String s) {
        String answer = "";
        int index = 0;
        
        for(int i = 0; i < s.length(); i++){
            char c = s.charAt(i);
            if(c == ' '){
                answer += c;
                index = 0;
                continue;
            }
            if(index % 2 == 1){
                answer += Character.toString(c).toLowerCase();
                index++;
            }
            else{
                answer += Character.toString(c).toUpperCase();
                index++;
            }
            
        }
        return answer;
    }
}

 

 

➡️index는 조건문을 사용하기 위해 값을 넣어둘 변수. for문 안의 i라는 변수를 사용해서 짝홀수를 판단한다면

required variable(변수) found value(값) 라는 오류를 만날 것,,,

 

➡️s.charAt(i) : s라는 문자열의 i번째 문자(char)를 반환

➡️char형은 큰따옴표가 아닌 따옴표 사용

➡️Character.toString(c): char형을 String으로 바꾸는 메서드

➡️toLowerCase(), toUpperCase(): 소문자로, 대문자로 바꿔주는 메서드

 

😂넘어온 문자열의 각각의 문자를 다루는 문제라서 char형 배열로 바꿔야한다고 생각했는데 String형 배열로도 충분히 풀 수 있는 문제였다

String[] arr = s.split(""); 

😂다른 사람의 풀이를 봤을 때 삼항연산자를 쓴 사람들이 많았다. 알고 있지만 참 안 써진다

(조건문) : ? 참 : 거짓

Comments