본문 바로가기

Java/[패스트캠퍼스] 100% 환급 챌린지

패스트캠퍼스 환급챌린지 9일차 미션 (2월 9일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기

https://fastcampus.co.kr/dev_online_besignature
수강 강의명

강의 내용

[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의 타입을 강제로 바꿈

 


 

수강 화면수강 화면수강 화면
수강 화면

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

https://bit.ly/48sS29N

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr