728x90
📋 문제
문자열 myString이 주어집니다. myString에서 알파벳 "a"가 등장하면 전부 "A"로 변환하고,
"A"가 아닌 모든 대문자 알파벳은 소문자 알파벳으로 변환하여 return 하는 solution 함수를 완성하세요.
📋 입출력 예시

📋 실패 풀이
class Solution {
public String solution(String myString) {
// StringBuilder 생성
StringBuilder answer = new StringBuilder();
for(int i = 0; i < myString.length(); i++){
char currentChar = myString.charAt(i);
if(currentChar == 'a'){
answer.append(Character.toUpperCase(currentChar));
} else {
answer.append(Character.toLowerCase(currentChar));
}
}
return answer.toString();
}
}
📌 StringBuilder
<객체 선언>
StringBuilder answer = new StringBuilder();
- 작은따옴표('): 단일 문자(char)를 나타냄. 단일 문자 리터럴은 문자 하나를 표현하며, 이는 Java의 char 타입에 해당
- 큰따옴표("): 문자열(String)을 나타냄. 문자열 리터럴은 문자들의 시퀀스를 표현하며, 이는 Java의 String 타입에 해당

근데 이 방법은 실패다 ㅡㅡ
📋 다른 풀이
📌 replacaeAll()
- String replaceAll(String 대체될 문자, String 대체할 문자)
class Solution {
public String solution(String myString) {
//어차피 a말고 소문자로 변환되어야 하니까 첨부터 다 소문자로 변환
myString = myString.toLowerCase();
myString = myString.replaceAll("a","A");
return myString;
}
}
1. 입출력 예시를 보며 "a" 제외한 문자들은 다 소문자임 => 그럼 첨부터 다 소문자로 변환
2. replaceAll()을 사용하여 "a"를 대문자 "A"로 바꿔버림
Good
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
| [Lv.0] 문자열 바꿔서 찾기 (1) | 2024.07.24 |
|---|---|
| [Lv.0] 배열에서 문자열 대소문자 변환하기 (2) | 2024.07.24 |
| [Lv.0] 원하는 문자열 찾기 (0) | 2024.07.24 |
| [Lv.0] 부분 문자열 (1) | 2024.07.20 |
| [Lv.0] 문자열 정수의 합 (0) | 2024.07.20 |