02.03(수)
Println() 메서드의 단축어 배움
sout / sysout / syso 셋 중 하나를 입력하고 Ctrl + Space 입력 시 자동으로 입력됨
sout이 제일 편한 것 같다..ㅋㅋㅋ sysout은 누르면 다시 선택 1번 더 해야 해서 번거로움
System.out.println();
[ 숫자와 문자 ]
정수 / 실수 / 문자 / 문자열
문자는 한 글자만 가능 / 문자열은 한 글자 이상 표기 가능
+ 문자는 사실상 하나의 숫자 값(java는 유니코드 참조 시 값을 알 수 있음
ex) '1' = '49'와 같다.
[ 변수(variable) ]
변수 : RAM에 한 개의 값을 기록하기 위한 장소(공간)
사용 이유 : copy & paste와 같은 방식
선언 : 자료형 + 변수명 + ;
int number; // number라는 이름의 정수형 변수 선언
변수의 명명규칙
[ 필수 ] - 지키지 않는 경우 error 발생
1. 대소문자가 구분되며 길이 제한이 없다.
2. 예약어 사용 X
3. 숫자로 시작 X
4. 특수문자는 '_'와 '$' 만을 허용
[ 권장 ] - 프로그래머 사이의 암묵적인 약속 / 사실상 결국 지켜야 함 Coding Convention
1. 카멜 표기법 사용
2. 한글 입력이 가능하나 사용 지양
3. 의미 있는 변수명 사용
변수의 자료형
1. 기본형 ( Primitive Type )
- 실제 데이터(값)를 저장
- 논리/문자/정수/실수형으로 나눠지며, 8개의 자료형이 있음
- 각 자료형 별 데이터의 저장 크기가 다름
- boolean / char / byte / short / int / long / float / double
- int / double 각각 정수, 실수의 기본 자료형
- float 자료형은 초기화 시 어미에 f 적어줘야 함
- long 자료형도 초기화 시 어미에 l 적어줘야 함
float fNum = 3.14f;
long lNum = 100l;
2. 참조형 ( Reference Type )
- 데이터가 저장되어 있는 주소를 저장
- 기본형을 제외한 나머지 ex) String, 사용자 정의 자료형
- 주소 값만 저장하므로 4byte의 크기
Literal
-> 변수에 대입되는 값 자체를 의미
상수
수학에서 변치 않는 값
프로그래밍에서는 한 번만 저장할 수 있는 변수 // 즉 초기화 후 다른 값을 대입할 수 없음
final double PI = 3.14;
변수명은 대문자 사용 - 일반 변수와 구별하기 위해 / 예약어 final 선언 후 바로 리터럴로 초기화해야 함
형 변환
[ 자동 형 변환 ]
1. 자료형이 작은 것에서 큰 것으로 대입될 때
byte b = 100;
int i = b;
byte 형 변수를 더 큰 자료형인 int형 변수에 대입하는 경우
2. 자료형이 다른 값이 계산될 때
int i = 3;
double d = 9.9;
System.out.println(i + d);
int와 double 자료형을 연산하는 경우 i의 값이 3 -> 3.0 실수로 변경되어 연산 후 결과도 double형인 12.9 출력됨
[ 강제 형변환 ]
1. 자동 형변환을 사용할 수 없거나 원하는 결과를 얻을 수 없는 경우
int num = 2147483647;
long result = (long)num + 1;
System.out.println(result);
해당 변환 대상 값 앞에 변환할 자료형을 적어줌 ex) (long)
주의!!
데이터가 큰 자료형에서 작은 자료형으로 변경 시 앞의 자료가 잘려서 손실이 발생할 수 있음
ex) int -> byte : 4바이트에서 1바이트로 변경되므로 앞의 3바이트 내용 사라짐
Data Overflow
-> 데이터가 허용된 범위 이상의 bit를 침범하는 것
ex) 1byte : -128 ~ 127 범위인데, 127 + 1을 하는 경우 128이 아닌 -128이 됨
[ 과제 ]