변수란?
- 자료를 저장하기 위한 메모리 공간(그릇)으로 타입에 따라 크기 달라짐
- 값이 아니라 타입에 따라 크기가 다름
- 메모리 공간에 값(value)을 할당(assign)후 사용
타입(형)이란?
- 데이터의 종류
1) 기본형(Primitive type): 미리 정해진 크기의 Memory Size로 표현, 변수 자체에 값 저장
2) 참조형(Reference type): 크기가 미리 정해질 수 없는 데이터의 표현, 변수에는 실제 값을 참조할 수 있는 주소만 저장
- 정수 계산 시 overflow 주의
- 필요한 수의 크기를 고려해서 int 또는 long 등 타입 선택
- 실수의 연산은 정확하지 않음(유효 자리수를 이용한 반올림 처리)
형 변환(Type casting)이란?
- 변수의 타입을 다른 타입으로 변환하는 것
- char <-> int
- primitive 는 primitive 끼리, reference 는 reference끼리 형 변환 가능
- boolean은 다른 기본 타입과 호환되지 않음
- 기본 타입과 참조혀으이 형 변환을 위해서 Wrapper 클래스 사용
- 형 변환 방법
- 형 변환 연산자(괄호) 사용
ex) double d = 100.5; int result = (int)d;
기본형의 형 변환 진행
1. 묵시적 형 변환(promotion)
byte b = 10;
int i= (int)b;
int i2 = b;
2. 명시적 형 변환
int i = 300;
byte b = (byte)i;
- 값의 크기, 타입의 크기가 아닌 타입의 표현 범위가 커지는 방향으로 할당할 경우는 묵시적 형변환 발생
byte -> short, char -> int -> long -> float -> double
- 명시적 형변환은 값 손실이 발생할 수 있으므로 프로그래머 책임하에 형변환 진행
- 묵시적 형변환은 자료의 손실 걱정이 없으므로 JVM이 서비스 해줌
연산자란?
- 어떤 기능을 수행하는 기호
- 연산자 종류와 우선순위 및 결합 방향
- 산술 이항 연산자는 연산 전에 피 연산자의 타입을 일치시킴
- 피연산자의 크기가 4byte(int) 미만이면 int로 변경한 후 연산 진행
- 2개의 피연산자 중 큰 타입으로 형 변환 후 연산 진행
조건문(Conditional Statement)
1) if(_)
2) switch(_)
반복문
1) for
- 초기값, 조건식, 증감식의 위치가 명확
- 반복의 횟수가 명확한 경우
- index의 증감 활용
ex) 365일 공부 열심히!
2) while
- 반복의 횟수가 불명확한 경우
- index보다는 break, continue 활용
ex) 시험 끝날 때까지 열심히!