Language/Java

'Do it 자바프로그래밍 입문' 2장 정리

ABCD 2022. 8. 31.

목차

부호 비트

  • 양수면 0
  • 음수면1

보수

  •  더하였을 때 '0'이 되는 수(음수를 나타냄)
  •  2진법의 보수는 '0'을 '1'로 '1'을 '0'으로 변경 후 끝자리에 '1'을 더함

변수

  • 변하는 수
  • 영문자, 숫자, $, _ 만 사용 가능 (숫자로 시작은 안됨)
  • 자바에서 이미 사용중인 예약어는 사용 불가(ex. while, int, char...)
  • 대부분 소문자로 시작
  • 합성어시 합성단어 앞부분 대문자로 구별 쉽게표기!!
  • 컴퓨터 내부의 메모리 공간에 저장됨

 

변수선언

  • 선언한 변수의 이름으로 어떤 위치에 있는 메모리를 얼마만큼의 크기로 사용하겠다는 뜻

자료형

  • 자료의 형태

1. 정수자료형

byte 형

  • 8비트(1바이트)
  • -128 ~ 127

short 형

  • 16비트(2바이트)
  • -32,768 ~ 32,767

int 형 (정수의 기본형으로 사용)

  • 가장 많이 사용하는 자료형 >> 컴퓨터로 연산시 4바이트가 가장 효율적

long 형

  • 정수를 표현하는 가장 큰 단위의 자료형

 

ex)

int num1 = 12345678900;     //오류 : 범위 초과

long num2 = 12345678900;     //오류 : 모든정수값 기본 int로 처리

                       12345678900L;    //정상 처리

long num3 = 1000;    //정상처리 : 1000은 long형으로 변환됨(특수성)

 

문자세트

  • 어떤 문자를 컴퓨터 내부에서 표한하려면 특정 정수값으로 정하고자 약속하는데 이런 코드값을 모아둔 것

'Do it 자바프로그래밍 입문' 2장 정리

 

아스키코드

  • 가장 기본이 되는 문자 인코딩
  • 영문자, 숫자, 특수문자 등을 나타내는 문자 세트

유니코드

  • 유니코드의 1바이트는 아스키코드와 호환
  • 그 밖의 문자는 2바이트 or 그 이상의 조합으로 표현
  • 자바에서 문자기반으로 사용
  • char형은 2바이트 사용

2. 문자자료형

char 형

  • ('   ') 작은 따옴표 사용
  • 한글자 작성

string 형

  • ("   ") 큰 따옴표 사용
  • 여러 글자 작성

 

/* 문자형 변수에 숫자를 저장하면 해당 숫자의 문자가 출력

ex) char a2= 65;   >>  결과값 'A' 산출 */

 

부동 소수점 방식

  • 가수부분과 지수부분을 나누어서 실수를 나타내는 방식  ex) 1.0 x 10^(-1)

3.실수자료형

float 형

  • 부호 1비트 + 지수부 8비트 + 가수부 23비트

double 형 (실수의 기본형으로 사용)

  • 부호 1비트 + 지수부 11비트 + 가수부 52비트

4.논리자료형

Boolean 형

  • 어떤 변수의 참, 거짓의 값을 나타내는데 사용
  • 1바이트로 값 저장
  • true or false 값만 가짐

자료형 없이 변수 선언

  • var 사용!!
  • 한번 선언한 자료형 변수를 다른 자료형으로 사용 불가

ex)

var str = "Hello";

srt = "Test";  //가능

srt = 3' // 불가능

  • var는 '지역변수'만 가능!!  // 지역변수 - 프로그램의 {    } 내에서 사용할 수 있는 변수 

상수

  • 예약어 final 사용

ex)

final double PI = 3.14;

final int MAX_NUM = 100;

  • 항상 변하지 않는 값
  • 상수 이름은 대문자를 주로 사용
  • 단어 연걸시 _기호 사용
  • 반복적으로 사용 or 변하지 않는 값 사용시 용이

리터럴

  • 프로그램에서 사용하는 모든 숫자, 문자, 논리값을 일컫는 말

ex)

char ch = 'A';   // A가 이터럴

int num = 10;  // 10이 이터럴

final double PI = 3.14;  // 3.14가 이터럴


형변환

  • 각 변수의 자료형이 다를 때 자료형을 같게 바꾸는 것       // 연산시 하나의 자료형으로 통일해야 연산이 가능

묵시적 형변환

  • 바이트 크기가 작은 자료형 -> 큰 자료형 대입

ex)

byte bNum = 10;

int INum = bNum;

  • 덜 정밀한 자료형 -> 더 정밀한 자료형 대입

ex)

int iNum = 20;

float fNum = iNum;

  • 연산 중 자동 변환

ex)

int iNim = 20;

float fNum = iNum;

double dNum;

dNum = fNum + iNum;

 

명시적 형변환

  • 바이트 크기가 큰 자료형 -> 작은 자료형 대입

ex)

int iNum = 10;

byte bNum = (byte)iNum;

//표현할 수 있는 범위를 넘는 경우 손실 발생

  • 더 정밀한 자료형 -> 더 정밀한 자료형 대입

ex)

double dNum = 3.14;

int iNum = (int)dNum;

//해당 과정에서 소수점 이하는 생략되고 정수부분만 대입됨

//정수값에 해당하는 문자출력도 가능

System.out.println((char)ch2)

  • 연산 중 형변환

ex)

double dNum = 1.2;

float fNum = 0.9F;

int iNum3 = (int)dNum1 + (int)fNum2;    // 결과값 = 1

int iNum4 = (int)(dNum1 + fNum2);     //결과값 = 2

 

//형변형 순서에 따라 결과값은 달라질 수 있다. iNum4의 경우 합산후에 형변환을하였기에 결과값이 2가 출력 되는 것

728x90
반응형