강의 내용
[1] 기본 자료형과 수의 표현(실습)
[2] 문자 자료형(char)의 이해
[3] 문자 자료형(char)의 이해(실습)
[1] 기본 자료형과 수의 표현(실습)
여러 진법으로 출력하는 방법
컴퓨터가 어떤 진수인지 인식하려면 접두사를 숫자 앞에 붙여야 함
2진수 : 0b, 8진수 : 0, 16진수 : 0x
클래스를 통해 구하는 방법
어떤 진수로 변경하려는 데이터를 인자로 전달하면 변환된 값이 문자열로 리턴된다.
Integer.toBinaryString()
Integer.toOctalString()
Integer.toHexString()
Q. 69를 10진수, 2진수, 8진수, 16진수로 출력하시오.
public class BinaryTest { public static void main(String[] args) { int decimal = 69; System.out.println("decimal = " + decimal); // int 형(정수)이므로 10진수 형태로 들어가게 된다. int binary = 0b01000101; System.out.println("binary = " + binary); // 69 int octal = 0105; System.out.println("octal = " + octal); // 69 int hexa = 0x45; System.out.println("hexa = " + hexa); // 69 } }
Q. 123을 10진수, 2진수, 8진수, 16진수로 출력하시오.
public class BinaryExam { public static void main(String[] args) { int decimal = 123; System.out.println("decimal = " + decimal); int binary = 0b01111011; System.out.println("binary = " + binary); // 123 System.out.println(Integer.toBinaryString(decimal)); // 1111011 int octal = 0173; System.out.println("octal = " + octal); // 123 System.out.println(Integer.toOctalString(decimal)); // 173 int hexa = 0x7B; System.out.println("hexa = " + hexa); // 123 System.out.println(Integer.toHexString(decimal)); // 7b } }
[2] 문자 자료형(char)의 이해
문자 자료형 = 수치 자료형
모든 문자는 컴퓨터에서 저장될 때 내부적으로 수치 형태로 저장된다.
아스키코드(ASCII)
문자(영문/특수문자/숫자)를 수치로 약속해놓은 표
7bit(0~127) : 제한된 표현 범위로 인해 비 영어권 문자들을 표현할 수 없음
유니코드(Unicode)
아스키 코드를 확장한 표(비 영어권 문자들을 표현하기 위함)
2byte(0~65535) 형태의 문자
자바에서는 문자를 char이라는 자료형에 저장
*char : 2byte를 저장할 수 있는 타입(유니코드 방식을 따름), 모든 문자를 제약없이 저장할 수 있음
C언어에서는 char를 1byte로 표현하기 때문에 비 영어권의 문자를 저장할 수 없음
["ㄱ"] + ["ㅏ"]를 합쳐 하나의 배열["가"]로 만들어서 사용
\uAC00
AC : 1byte
00 : 1byte
*\u : 유니코드로 표현한 16진수임을 의미
[3] 문자 자료형(char)의 이해(실습)
아스키코드 표를 참고하여 문자를 핸들링하는 방법
(1) int 타입에 'A'를 저장할 수 있을까?
char는 컴퓨터가 내부적으로 수치형 자료로 인식하기 때문에 가능
int a = 'A';
a에 문자 'A'가 들어갈 때 아스키 코드값인 65가 들어가게 된다.
(2) 'B'에 1을 더할 수 있을까?
int와 char는 서로 수치 자료형 관계이므로 연산을 통해 숫자 혹은 문자로 표현 가능
+(산술 연산자)를 사용하여 연산을 하면 문자가 아스키 코드 표에 있는 수치로 바뀐다.
'B'(66) + 1= 67
*+ : 숫자와 숫자를 더하는 연산자
수치 데이터를 문자로 출력하는 방법
문자가 연산을 하게 되면 정수형(4byte)이 되어버린다.
정수형(4byte)은 문자형(2byte)에 들어갈 수 없음
정수형(4byte)을 강제로 문자형(2byte)으로 맞춰 char형에 들어갈 수 있도록 해야 함
(char)b
int 형 데이터를 강제로 char 형 데이터로 바꿔야 함
b의 값이 char형으로 바뀌어서 B가 출력된다.
*형 = 타입
*형변환(Casting) : b의 타입을 강제로 바꿈
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
패스트캠퍼스 [직장인 실무교육]
프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.
fastcampus.co.kr