1. 변수
1) 정의 : 단 하나의 값(Data)을 저장할 수 있는 메모리 공간.
2) 예약어 : keyword 또는 reserved word라고 함.
ex) true, if 등..
3) 분류
Data > Type > Data Type > 기본형(primitive type) 또는 참조형(reference type)
* JAVA는 참조형 변수 간의 연산을 할 수 없다. why?
2. 타입
1) 참조형 변수(reference type variable)
(Class name) (variable name) : 객체의 주소를 할당 받는다
Class, 배열, Interface 등
ex) Date today = new Date();
2) 기본형 변수(primitive type variable) : 8가지
논리형 : boolean
문자형 : char
정수형 : byte, short, int, long
실수형 : float, double (기본형 == double)
* boolean을 제외하고 7개의 기본형은 서로 변환과 연산이 가능
3) 상수, 리터럴(constant, literal)
상수 : 값을 저장한 후 변경할 수 없음, final keyword로 선언
리터럴 : 그 자체로 값을 의미하는 것
ex) 상수 = 리터럴;
final int var = 1;
(keyword) (data type) (name) = (literal);
4) 리터럴 타입과 접미사
4-1) 2,8,16 진수 표현법
2진수 : 0b~ : 0b10 = 10진수 2
8진수 : 0~ : 010 = 10진수 8
16진수 : 0x~ : 0x10 = 10진수 16
4-2) 접미사
e : 10의 제곱 곱하기
ex) 2e1 = 2 * 10^1
long : L
float: f or F
double : d or D
* data type마다 기본형은 접미사를 붙이지 않아도 됨
정수형 기본형 : int
실수형 기본형 : double
ex) float var = 3.14 (X) : error 발생, 근본적으로 float type 크기가 double type보다 작아서 에러가 발생하는 것.
float var = 3.14f (O)
double var = 3.14 (O)
* float형의 최대 overflow는 무한대, 최소 overflow는 0
float 변수의 범위는 +- (1.4*10^(-45) ~ 3.4*10^(38))
5) String
String과 연산하면 무조건 문자열로 변환되어 연산됨
ex) "hi" + 8.0 = "hi8.0"
3. print, scan
1) println() vs printf()
println() : 변수값을 그대로 출력, 즉 다른 형식으로 출력할 수 없음
printf() : 지시자(specifier)을 통해 같은 값이라도 다른 형식(format)으로 출력, 즉 형식화된 출력이 가능
2) 지시자 접두사
%n(지시자) : 앞에 빈 공간을 포함하여 길이 n만큼으로 출력
%-n(지시자) : 뒤에 빈 공간을 포함하여 길이 n만큼으로 출력
%0n(지시자) : 앞에 빈 공간을 0으로 채워넣어 길이 n만큼으로 출력
%(전체자리.소수점이하자리)f : 지정한 소수점 이하 자리에서 반올림하여 출력
3) scanf()
기본
Scanner scanner = new Scanner(System.in);
(변수) = scanner.nextLine();
'CS > JAVA' 카테고리의 다른 글
[JAVA] Abstract, Interface (0) | 2021.01.12 |
---|---|
[JAVA] 상속, 다형성, 캡슐화 (0) | 2021.01.12 |
[JAVA] 데이터의 메모리 할당 순서 (0) | 2021.01.12 |
[JAVA] 변수와 메서드 (0) | 2020.10.30 |
[JAVA] 개요 (0) | 2020.10.11 |