[JAVA 문법 종합반 1일차-숫자와 문자(ascii)]

김동규·2023년 5월 22일
0

아스키 코드
Java에서는 기본적으로 아스키코드 규칙으로 문자를 저장(표현) 하고 있다.

ex. A = 65 , a = 97 , "0" = 80

숫자를 문자로 바꾸는 코드 예시

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);

    int asciiNumber = sc.nextInt();
    char ch = (char)asciiNumber;

    System.out.println(ch);
 }
}

Import java.util.Scanner: 자바 유틸이라는 외부에서 제공하는 것을 사용
sc.nextInt: sc 값을 하나하나 읽음
int asciiNumber: nextInt로 읽은 값을 아스키 넘버로 저장
(char)asciiNumber: 아스키넘버를 character로 변환

ex) 97을 입력할 경우

(1) 97이 sc.nextInt로 인해 읽어줘서 asciiNumber로 할당되었음
(2) 할당된 asciiNumber가 변수타입(char)에 의해서 형변환이 이뤄짐 → a 값이 나오게 됨

문자를 숫자로 바꾸는 코드 예시

import java.util.Scanner;

public class Main {



public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);

    char letter = sc.nextLine().charAt(0);
    int asciiNumber = (int) letter;

    System.out.println(asciiNumber);
 }
}

ex) a를 입력할 경우

마찬가지로 Scanner를 첫줄 import로 불러왔음

(1) 입력하는 값을 sc에 저장 후 nextline을 통해 읽어줌
(2) 입력하는 문자의 값을 charAt(0)라는 표현을 통해 첫 글자만 받아옴 → 이때 컴퓨터는 0부터 시작이므로 1이 아니라 0으로 표현
(3) letter 에는 a값이 저장
(4) (int)로 인해 형변환이 진행 → 97이 출력

Java에서는 이처럼 ascii코드를 이용해서 문자 → 숫자 , 숫자 → 문자 로 변환이 가능하다.

profile
안녕하세요~

0개의 댓글