본문 바로가기
Web/Java

Java(2) - 변수

by SeleniumBindingProtein 2022. 1. 28.
728x90
반응형

1. 컴퓨터에서 자료 표현하기
    1) 2진수로 표현
        - 0과 1로만 데이터를 저장함
        - bit(1비트) : 컴퓨터가 표현하는 데이터의 최소 단위로 2진수 하나의 값을
                      저장할수 있는 메모리의 크기
        - byte(바이트) : 1byte = 8bit    

    2) 2진수와 10진수

    10진수  0   1   2   3   4   5   6    7      8       9       10
    2 진수  0   1   10  11  100 101 110  111    1000    1001    1010

    3) 2진수와 8진수 16진수
    10진수  0   1   2   3   4   5   6    7      8       9       10      11      12      13      14      15      16
    2 진수  0   1   10  11  100 101 110  111    1000    1001    1010    1011
    8 진수  0   1   2   3   4   5   6    7      10      11      12      13      14      15      16      17      20
    16진수  0   1   2   3   4   5   6    7      8       9       A       B       C        D       E      F       10                                

    4) 8비트로 5를 표현
    00000101
    -
    부호비트(MSB)

    5) 비트로 나타낼수 있는 수의 범위
        - 한개의 비트로 나타낼수 있는 수 : 0,1 (2개)
        - 두개의 비트로 나타낼수 있는 수 : 00, 01, 10, 11 (4개)
        - 세개의 비트로 나타낼수 있는 수 : 000, 001, 010, 011, 100, 101, 110,111 (8개)

2. 변수(Variable)는 언제 쓰느냐?
    1) 프로그램에서는 항상 변하는 값을 나타낼 필요가 있음.
    2) 표현하려는 수에 맞는 데이터 타입(자료형)을 이용하여 변수를 선언

3. 변수 이름
    1) 영문자(대문자, 소문자)나 숫자를 사용, 특수문자중 _와 $만 사용
    2) 시작은 숫자로 할수 없음
    3) 예약어는 사용할수 없음
    4) 용도에 맞고 가독성이 좋게 만드는것이 좋음
        ex) int numberOfStudent;   

4. 기본 자료형 
            정수형      문자형      실수형      논리형
1바이트     byte          -           -         boolean
2바이트     short         char        -          -
4바이트     int           -           float      -
8바이트     long          -           double     -

5. 정수 자료형 수의 범위와 용도
------------------------------------------------------------------------
자료형      바이트크기      수의 범위                용도   
byte            1           -2^7 ~ 2^7-1           1바이트 단위의 자료형 동영상, 음악파일, 실행파일의 자료를 처리할때 사용 
short           2           -2^15 ~ 2^15-1         2바이트 단위의 자료형 C/C++ 언어와 호환시 사용 
int             4           -2^31 ~ 2^31-1         정수에 대한 기본 자료형  
long            8           -2^63 ~ 2^63-1         8바이트 자료형, 숫자의 뒤에 알파벳 L또 l을 써서 long 자료형으로 처리  


6. int로 10을 표현 (32비트)
00000000000000000000000000001010
-
부호비트

7. 부동 소수점 방식
    1) 실수는 정수보다 정밀하기 때문에 다른방식으로 표현해야함.
    2) 실수값 0.1 표현.
        - 1.0 * 10^-1
          ---   -- -- 
          가수  밑수 지수
                --
                밑수는 2, 10, 16 등을 주로 사용함
    3) 지수부와 가수부로 표현함.
    4) 0.2 표현
        - 0.4 * 2^-1
        - 1.6 * 2^-3    
    5) float형과 double형
        - float형
          부호비트 + 지수부 8비트 + 가수부 23비트
        - double형
          부호비트 + 지수부 11비트 + 가수부 52비트  

8. 문자형 
    1)문자도 정수로 표현함.
    2)컴퓨터 내부에서 표현하기 위해 특정 정수 값을 정의.
        A는 65
    3)문자세트(Character Set)        
        - 각 문자를 얼마로 표현할 것인지 코드 값을 모아둔 것.
        - ASCII code : 알파벳과 숫자, 특수문자등을 1바이트에 표현하는데 사용하는 문자세트.
        - euc-kr, 
        - UNICODE : 전세계 표준으로 만든 문자 세트.
            utf-8 : 1바이트에서 4바이트까지 다양하게 문자를 표현할수 있음.
            utf-16 : 2바이트로 문자를 표현.
        - 문자를 숫자로 변환한 값의 세트
    4)자바는 문자를 나타내기 위해 전세계 표준인 UNICODE를 사용

    5)encoding : 문자가 숫자로 변환되는 것
      decoding : 숫자에서 다시 문자로 변환되는 것      

9. 논리형
    1) true(참), false(거짓) 두가지만 나타냄.
    2) 1바이트를 사용함.

10. 지역 변수 자료형 없이 사용하기 (java 10지원)    
    1) 추론 가능한 변수에 대한 자료형을 선언하지 않음.
    2) 한번 선언하여 추론된 변수는 다른 타입의 값을 대입할수 없음.
    3) 지역 변수만 사용 가능

11. 변하지 않는 상수(constant)
    1)원주율 3.14, 1년 12개월 등
    2)final 예약어를 사용하여 선언

12. 리터럴(literal)    
    1)프로그램에서 사용하는 숫자, 문자, 논리값을 뜻함.

13. 형변환 (Type conversion)    
    1) 서로 다른 자료형 간에 연산등의 수행을 위해 하나의 자료형으로 통일하는 것.
    2) 묵시적 형변환(implicit type conversion, 자동 형변환)과
       명시적 형변환(explicit type conversion, 강제 형변환)이 있음.
    3) 바이트 크기가 작은 자료형에서 큰 자료형으로 형변환은 자동으로 이루어짐.
    4) 덜 정밀한 자료형에서 더 정밀한 자료형으로 형변환은 자동으로 이루어짐.   

    5) 문자열 + any type => 문자열 
       any type + 문자열 => 문자열

    6) 정수와 실수간의 캐스팅
        - 저장방식이 다르기때문에 데이터 손실 반드시 일어남.
        - 명시적 캐스팅 코드가 들어가야함.   

728x90
반응형

'Web > Java' 카테고리의 다른 글

Java(6) - review  (0) 2022.01.28
Java(5) - 반복문  (0) 2022.01.28
Java(4) - 조건문  (0) 2022.01.28
Java(3) - 연산자  (0) 2022.01.28
Java(1) - 개념  (0) 2022.01.28

댓글