🎇변수
변수 생존기간(사용범위)
- 변수는 중괄호 {} 안에서 선언된 다음 사용된다.
- 메서드의 중괄호 안에서 사용되는 변수를 지역변수라고 한다.
자료형(type)
정수형
- byte : 1byte
- short : 2byte
- char(유니코드 값, 문자형) : 2byte, 양의 정수만 포함.
- int : 4byte, 기본타입
- long : 8byte, L(l)
실수형
- float : 4byte, F(f)
- double : 8byte, 기본타입
논리형
- boolean : 1byte, true or false
🎇형변환(type casting)
자동 형변환
- 허용 범위가 작은 범위는 큰 범위로 자동으로 형변환된다.
- Ex) byte → short → int → long → float → double
※ 예외 : char 문자형으로는 자동 형변환이 불가하다.
수동(강제) 형변환
- 메모리 관점에서 생각하면 쉽다, 큰 데이터 값은 작은 공간에 들어가지 않으므로, 일부를 수동으로 삭제해줘야 한다.
- 예를 들면, 실수형의 경우 정수형으로 수동 형변환 시 소수점 자리를 버리게 된다.(데이터 손실 발생)
연산에서 자동 형변환
- byte나 short 또는 char 연산 시에 자동으로 int 형태로 형변환된다.
- 단, 숫자 리터럴 값을 연산하여 해당 타입에 대입하는 경우, 각 타입의 값으로 변환되어 저장된다.
- 문자열과 숫자형 연산 시 문자열로 변환된다.
- 참조형과 기본형 간에는 비교 연산이 불가능하다.
- parser : Integer.parseInt(), ...
- 숫자 리터럴 → String : String.valueOf()
🎇시스템 입출력
- System.in/out
- System : 클래스
- in/out : 멤버 변수
- println() : static 메서드
- 스트림이지만, 표준 입출력의 경우 별도로 close()를 호출해주지 않아도 된다.
- System.in.read() 메서드 호출 시, 입력값 뿐만 아니라 줄개행과 첫머리 이동 값도 함께 입력된다.
printf
- %d : 10진법 정수
- %s : 문자열
- %f : 10진수 실수
🎇연산자
단항 연산자
- .(dot), (), 부호 연산자, not(!), 명시적 형변환(type casting), 선행증감
선행증감(++, --)
후행증감
- 선행증감과 부호는 같으나, 값에 뒤에 붙혀줄 경우 대입 후 연산이 수행된다.
- Ex) int a = 1; int b = a++; → b == 1 && a == 2가 된다.
이항 연산자
- 산술 연산자(사칙 + %), 관계 연산자, 논리 연산자
관계 연산자
논리 연산자
삼항 연산자
- 조건 연산자
- (조건식) ? true 실행 : false 실행.
연산자 우선순위
- 최고 > 단항 > 산술 > 쉬프트(x) > 관계 > 비트 > 논리 > 삼항 > 대입 > 후행