코딩테스트
[문자열] 2. 대소문자 변환
개발하는지호
2023. 11. 25. 23:45
2. 대소문자 변환
설명
대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하여 출력하는 프로그램을 작성하세요.
입력
첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다.
문자열은 영어 알파벳으로만 구성되어 있습니다.
출력
첫 줄에 대문자는 소문자로, 소문자는 대문자로 변환된 문자열을 출력합니다.
예시 입력 1
StuDY
예시 출력 1
sTUdy
<<풀이>>
두 가지 방식의 풀이가 있다. 첫째는, Character 메소드를 활용하는 것이고 두 번째는 아스키코드 값을 이용해서 하는 것이다.
Character 메소드 활용
import java.util.Scanner;
class Main {
public String solution(String str) {
String answer = "";
char[] x = str.toCharArray();
for (int i = 0; i < x.length; i++) {
if (Character.isLowerCase(x[i])) {
answer += Character.toUpperCase(x[i]);
} else {
answer += Character.toLowerCase(x[i]);
}
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner in = new Scanner(System.in);
String str = in.nextLine();
System.out.println(T.solution(str));
}
}
향상된 반복문으로도 충분히 가능하다.
아스키코드 활용
import java.util.Scanner;
class Main {
public String solution(String str) {
String answer = "";
for (char x : str.toCharArray()) {
if (x >= 97 && x <= 122) answer += (char)(x - 32);
else answer += (char)(x + 32);
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner in = new Scanner(System.in);
String str = in.nextLine();
System.out.println(T.solution(str));
}
}
여기서 if문은 간단한 형태이면 {}를 생략하고도 가능하다.
<<추가 공부>>
아스키 코드

아스키(ASCll)란, 미국 국립 표준 협회에서 표준화한 정보교환용 7비트 부호체계이다.
A : American
S : Standard
C : Code for
I : Information
I : Interchange
아스키코드는 영문 알파벳을 사용하는 대표적인 문자 인코딩이다.
문자 인코딩 : 이는 사용자가 입력한 문자나 기호들을 컴퓨터가 이용할 수 있는 신호로 만드는 것을 말한다.
아스키는 컴퓨터와 통신 장비를 비롯한 문자를 사용하는 많은 장치에서 사용되며, 대부분의 문자 인코딩이 아스키에 기초를 둔다.