주니어 기초 코딩공부/JAVA_programmers_코딩테스트
대문자와 소문자_programmers_lev00
jju_developer
2022. 12. 4. 23:39
728x90
<코딩 테스트>
문자열 my_string이 매개변수로 주어질 때, 대문자는 소문자로 소문자는 대문자로 변환한 문자열을 return 하도록 solution 함수를 완성해주세요.
<나의 풀이 과정>
처음에는 패턴으로 만들어서 풀고 싶었지만, 아직 패턴을 이용하는 방법이 익숙하지 않기 때문에
char 배열을 만든 후, 해당하는 Character가 대문자 인지, 소문자 인지 판별하는 방법을 사용하였습니다.
<나의 풀이 코드>
class Solution {
public String solution(String my_string) {
String answer = "";
char[] ch = my_string.toCharArray();
for (int i = 0; i < ch.length; i++) {
if (ch[i] < 97) {
ch[i] = Character.toLowerCase(ch[i]);
} else {
ch[i] = Character.toUpperCase(ch[i]);
}
}
return answer = String.valueOf(ch);
}
}
<다른사람 풀이 1>
import java.util.stream.Collectors;
class Solution {
public String solution(String myString) {
return myString.chars().mapToObj(operand -> String.valueOf((char) (Character.isLowerCase(operand) ? Character.toUpperCase(operand) : Character.toLowerCase(operand)))).collect(Collectors.joining());
}
}
<다른 사람 풀이 2>
class Solution {
public String solution(String my_string) {
String answer = "";
for(int i=0; i<my_string.length(); i++){
char c = my_string.charAt(i);
if(Character.isUpperCase(c)){
answer += String.valueOf(c).toLowerCase();
}else{
answer += String.valueOf(c).toUpperCase();
}
}
return answer;
}
}
728x90