문제 설명
영어 알파벳으로 이루어진 문자열 
str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.제한사항
- 1 ≤ str의 길이 ≤ 20
- str은 알파벳으로 이루어진 문자열입니다.
예시

사용 문법
처음에 일단 문자열을 하나 하나 분리하여 배열에 넣었다.
package test;
public class Test {
    public static void main(String[] args) {
        String str = "aBcDeFg";
        String[] s = str.split("");
        System.out.println(s[0]);
}이후 처음에는 0번지에 있는 ‘a’를 대문자로 바꿔봤다.
package test;
public class Test {
    public static void main(String[] args) {
        String str = "aBcDeFg";
        String[] s = str.split("");
        String a = s[0].toUpperCase();
        System.out.println(a);
    }
}
성공하여 이제는 
for문을 이용하여 모든 배열을 출력함과 동시에 if문을 사용해서 소문자 일 때는 대문자로, 대문자일 때는 소문자로 바꾸었다.package test;
public class Test {
    public static void main(String[] args) {
        String str = "aBcDeFg";
        String[] s = str.split("");
        for (int i = 0; i < s.length; i++) {
            if (s[i].equals(s[i].toLowerCase())) {
                String a = s[i].toUpperCase();
                System.out.print(a);
            } else if (s[i].equals(s[i].toUpperCase())) {
                String a = s[i].toLowerCase();
                System.out.print(a);
            }
        }
    }
}처음에는 문법을 찾아보았을 때 
Character.isLowerCase('') 해당의 문법만 나왔다. 하지만 저 문법은 Char 타입일 때에만 사용이 가능했다. 하지만 나는 String배열의 넣었기 때문에 String배열 안에 소문자가 있을 경우 비교하는 문법이 필요했다.
그래서 s[i]를 toLowerCase를 이용하여 소문자로 바꾼 후 s[i]번에 있는 문자열과 toLowerCase로 바꾼 문자열이 같을 경우에는 대문자로 바꾸었다. 만약 소문자가 아니고 대문자일 경우에는 반대로 비교하고 같을 경우 소문자로 바꾸었다.
다른 사람의 풀이
아스키코드를 이용한 소스 코드
import java.util.Scanner;
public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        for(int i=0; i<a.length(); i++) {
            char c = a.charAt(i);
            if(Character.isUpperCase(c)) {
                System.out.print((char)(c+32));
            }
            else {
                System.out.print((char)(c-32));
            }
        }
    }
}Share article