(백준) 자바 - 2744 대소문자 바꾸기

업데이트:

내 코드

package com.baekjoon;

import java.util.Scanner;

public class backjoon2744 {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    String str = scanner.nextLine();

    char[] arr;
    arr = str.toCharArray();

    for(int i = 0; i < arr.length; i++) {
      if(65 <= arr[i] && arr[i] <= 90) {
        arr[i] = (char) (arr[i] + 32);
        continue;
      }
      if(97 <= arr[i] && arr[i] <= 122) {
        arr[i] = (char) (arr[i] - 32);
        continue;
      }
    }
    System.out.println(arr);
  }
}

풀이

영어에서 소문자와 대문자의 아스키 코드 차이가 32이 인것을 활용한다.

A에서 a로 만드려면 32를 더하고 반대의 경우는 빼면 된다.

  • 주요 알파벳 아스키 코드
  • A = 65
  • Z = 90
  • a = 97
  • z = 122
  • 65 <= char <= 90 이면 대문자, 97 <= char <= 122 이면 소문자이다.

댓글남기기