오늘의 취준/오늘의 코테

[JAVA] 알고리즘 문제풀이 입문 1.02번

gogoem 2023. 5. 11. 14:36
728x90

강의: https://inf.run/w779

import java.util.Scanner;
 
public class cword {
  public static void main(String[] args){
    Scanner in = new Scanner(System.in);
    String input = in.nextLine();
    in.close();

    char[] charw = input.toCharArray();

    for(int i = 0; i < charw.length; i++){
        if(charw[i] >= 'A' && charw[i] <= 'Z'){
            char a = charw[i];
            charw[i] = (char) (charw[i] + 32);
        }else if(charw[i] >= 'a' && charw[i] <= 'z'){
            char a = charw[i];
            charw[i] = (char) (charw[i] - 32);
        }
    }

    String res = String.valueOf(charw);

    System.out.println(res);
    return ;
  }
}

 

Scanner

OS 자원(스레드)가 할당됨.
기본 입출력으로 사용할 시 닫지 않아도 큰 문제는 없으나 자원 절약 차원에서 scanner.close() 해주기!
만약 파일 입출력으로 사용할 시, 스캐너를 닫지 않으면 해당 파일 접근이 불가할 수 있으므로 꼭 닫아줘야 함.


char 형 toUpperCase/toLowerCase

char = character.toUpper/LowerCase(char);

char 형을 대소문자로 바꾸고 싶다면 아스키 값에 +-32를 해주어 바꿔주어야 함.

같은 문자의 대소문자는 아스키 값이 32만큼 차이가 남. 대문자로 바꾸려면 -32를, 소문자로 바꾸려면 +32를 해줘야 함.

char 배열을 string형으로 바꾸기

String res = String.valueOf(charw);

String을 char 배열로 바꾸기

char[] charw = input.toCharArray();