[프로그래머스/Java] Lv.0 특정한 문자를 대문자로 바꾸기

febCho·2024년 3월 13일
0

코딩테스트

목록 보기
80/253
post-thumbnail

문제

영소문자로 이루어진 문자열 my_string과 영소문자 1글자로 이루어진 문자열 alp가 매개변수로 주어질 때, my_string에서 alp에 해당하는 모든 글자를 대문자로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.

- 제한사항

  • 1 ≤ my_string의 길이 ≤ 1,000

풀이

charAt()으로 문자열을 자른 뒤 equals()로 주어진 문자열 alp와 비교하려고 하니, String.valueOf()로 파씽을 해주어야 했다. return 할 새로운 문자열 answer에 누적시킬 때도 마찬가지였다. 그 때문에 코드가 조금 지저분해진 느낌.

하지만 지난 풀이법처럼 List 객체를 활용해 코드를 짜지 않고 다르게 풀어보고 싶었다.

class Solution {
    public String solution(String my_string, String alp) {
        String answer = "";
        
        for(int i=0;i<my_string.length();i++){
            if(String.valueOf(my_string.charAt(i)).equals(alp)){
                answer += String.valueOf(my_string.charAt(i)).toUpperCase();
            }else{
                answer += String.valueOf(my_string.charAt(i));
            }
        }
        
        return answer;
    }
}

결과

profile
Done is better than perfect.

0개의 댓글