Language/Java

[Java] Java에 자료형과 연산자

또개해삼 2021. 7. 29. 21:38

1. 자료형(data type)

 

기본 자료형의 종류

정수형 문자형 실수형 논리형

1바이트 byte - - boolean
2바이트 short char - -
4바이트 int - float -
8바이트 long - double -

자바에서 문자 표현

  • 자바는 문자를 나타내기 위해 전 세계 표준인 UNICODE를 사용
  • utf-16 인코딩을 사용 (모든 문자를 2바이트로 표시

논리형과 자료형 없이 변수 사용하기

  • true(참), false(거짓) 두 가지만 나타냄
  • 1바이트를 사용 함
  • 값이 존재하는지, 배열이 비었는지, 결과가 참인지 거짓인지 등을 표현

변하지 않는 상수

  • 상수는 변하지 않는 수
  • final 예약어를 사용하여 선언
  • 상수를 사용하면 변하지 않는 값을 반복하여 사용할 때 의미 있는 문자로 인식하기 쉽고, 변하더라도 선언한 부분만 변경하면 되므로 여러 부분을 수정할 필요가 없음
final int MAX_NUM = 100;

형 변환

  • 서로 다른 자료형 간에 연산 등의 수행을 위해 하나의 자료형으로 통일하는 것
  • (묵시적 형 변환) 바이트 크기가 작은 자료형에서 큰 자료형으로 형 변환은 자동으로 이루어짐
  • (명시적 형 변환)바이트 크기가 큰 자료형에서 작은 자료형으로 형 변환은 변화하고자 하는 자료형을 써줘야 함
byte bNum = 10;
int iNum = bNum;

int iNum = 10;
byte bNum = (byte)iNum;

 

2. 연산자

산술 연산자

연산자 기능 연산 예

+ 두 항을 더합니다. 5+3
- 앞에 있는 항에서 뒤에 있는 항을 뺍니다. 5-3
* 두 항을 곱합니다. 5*3
/ 앞에 있는 항에서 뒤에 있는 항을 나누어 몫을 구합니다. 5/3
% 앞에 있는 항에서 뒤에 있는 항을 나누어 나머지를 구합니다. 5%3

복합 대입 연산자

연산자 기능 연산 예

+= 두 항의 값을 더해서 왼쪽 항에 대입합니다. num1+=2;
-= 왼쪽 항에서 오른쪽 항을 빼서 그 값을 왼쪽 항에 대입합니다. num1 -=2;
*= 두 항의 값을 곱해서 왼쪽 항에 대입합니다. num1 *=2;
/= 왼쪽 항을 오른쪽 항으로 나누어 그 몫을 왼쪽 항에 대입합니다. num1 /=2;
%= 왼쪽 항을 오른쪽 항으로 나누어 그 나머지를 왼쪽 항에 대입합니다. num1 %=2;

증가, 감소 연산자

연산자 기능 연산 예

++ 항의 값에 1을 더합니다. val = ++num; //먼저 num 값이 1증가한 후 val 변수에 대입
val = num++; //val 변수에 기존 num 값을 먼저 대입한 후 num 값 1 증가    
-- 항의 값에서 1을 뺍니다. val = --num; //먼저 num 값이 1감소 후 val 변수에 대입
val = num--; //val 변수에 기존 num 값을 먼저 대입한 후 num 값 1감소    

논리 연산자

연산자 기능 연산 예

&&(논리 곱) 두 항이 모두 참인 경우에만 결과 값이 참이고 그렇지 않은 경우는 거짓 boolearnval = (5>3) && (5>2);
    (논리 합)
!(부정) 단항 연산자입니다. 참인 경우는 거짓으로 바꾸고, 거짓인 경우는 참으로 바꿉니다. boolearnval = !(5>2);

조건 연산자

  • 삼항 연산자
  • 조건식의 결과가 true인 경우와 false인 경우에 따라 다른 결과가 수행됨
  • if(조건문)을 간단히 표현할 때 사용할 수 있음

연산자 기능 연산 예

조건식 ? 결과1 : 결과2; 조건식이 참이면 결과1, 조건식이 거짓이면 결과2가 선택 int num = (5>3) ? 10 : 20;