문제 설명
문자열 my_string이 매개변수로 주어질 때, 대문자는 소문자로 소문자는 대문자로 변환한 문자열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 1,000
- my_string은 영어 대문자와 소문자로만 구성되어 있습니다.
입출력 예my_stringresult
"cccCCC" | "CCCccc" |
"abCdEfghIJ" | "ABcDeFGHij" |
입출력 예 설명
입출력 예 #1
- 소문자는 대문자로 대문자는 소문자로 바꾼 "CCCccc"를 return합니다.
입출력 예 #2
- 소문자는 대문자로 대문자는 소문자로 바꾼 "ABcDeFGHij"를 return합니다.
대문자는 소문자로, 소문자는 대문자로 변경하여 출력하는 방법)
class Solution {
public String solution(String my_string) {
String answer = "";
for (int i = 0; i < my_string.length(); i++) {
if (Character.isLowerCase(my_string.charAt(i))) {
answer += String.valueOf(my_string.charAt(i)).toUpperCase();
}
if (Character.isUpperCase(my_string.charAt(i))) {
answer += String.valueOf(my_string.charAt(i)).toLowerCase();
}
}
return answer;
}
}
a~z, A~Z까지의 범위를 지정한 후, char로 형변환하여 출력하는 방법)
class Solution {
public String solution(String s) {
String answer = "";
for(int i=0;i<s.length();i++){
if(s.charAt(i)>=97 && s.charAt(i)<=122){
answer += (char)(s.charAt(i)-32);
} else if(s.charAt(i)>=65 && s.charAt(i)<=90){
answer += (char)(s.charAt(i)+32);
} else {
answer += s.charAt(i);
}
}
return answer;
}
}
class Solution {
public String solution(String s) {
String answer = "";
for(int i = 0; i < my_string.length(); i++) {
if(my_string.charAt(i)<=90) {
answer += (char)(my_string.charAt(i)+32);
//System.out.println(Character.toChars(my_string.charAt(i)+32));
}
if(my_string.charAt(i)>=90) {
answer += (char)(my_string.charAt(i)-32);
}
}
return answer;
}
}
char 자료형으로 변환 후 아스키코드의 차이인 32만큼을 -/+ 해주며 출력하는 방법)
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(c>='a'&&c<='z') c-=32;
else if(c>='A'&&c<='Z') c+=32;
answer+=c;
}
return answer;
}
}
'Algorithm > Programmers_Java' 카테고리의 다른 글
[Java] 세균 증식_비트연산자 (0) | 2023.04.10 |
---|---|
[Java] 가위 바위 보 (0) | 2023.04.09 |
[Java] 암호 해독_substring (0) | 2023.04.06 |
[Java] 제곱수 판별하기 (0) | 2023.04.03 |
[Java] 개미 군단 (0) | 2023.03.31 |
댓글