EGGRAN

JAVA공부기록 2 / 상수와 리터럴 , 자바의 정석으로 공부하기! 본문

공부기록/공부

JAVA공부기록 2 / 상수와 리터럴 , 자바의 정석으로 공부하기!

에그란 2021. 12. 26. 22:46
반응형

저는 자바의 정석으로 자바공부를 하는 중입니다.

이 글은 자바의 정석을 광고하는 포스팅이 아니며

실제로 제가 느끼기에는 좋은 책이라고 생각하여

자바를 공부하시는 분들께 추천드립니다 !

 

이 글은 자바공부 후 복습한 기록을 남기는 포스팅이라

저의 주관적인 생각이 추가될 수 있습니다. 

그러니 잘못된 점이 있다면 댓글로 알려주세요 ~  !

Java 공부기록 2

상수와 리터럴 feat. 자바의 정석

어제 다하려고했으나...너무 졸려서 오늘까지 이어지는 2단원 공부정리....^~^

부지런해지자규..정신차려~ 그나저나 날씨가 너무 춥다.. 할튼 오늘도 파이팅!

 

 

상수

- 값을 저장하는 공간

- 한번 값 저장하면 변경불가

- 변수 타입 앞에 final 을 붙여서 상수선언 ( ex. final int MAX = 10; )

- 반드시 선언과 동시에 초기화

- 대문자로 하는 것이 암묵적인 룰, 여러단어로 이루어져있으면 '_' 로 구분

 

리터럴

- 그 자체로 값을 의미하는 것

 

리터럴 타입과 접미사

- 정수형과 실수형은 여러 타입이 존재, 접미사를 붙여 타입구분.

- 논리형, 문자형, 문자열은접미사 없음 X

- 정수형 : L

long a = 1000_000_000L ; // '_'로 구분가능, long타입은 뒤에 접미사 L을 붙임.
 

- 실수형 : f, d (대문자도 사용가능, d는 생략가능)

float pi = 3.14; // error - 접미사 생략으로 오류발생, 접미사가 생략되면 float 이 아닌 double 로 간주됨.
float pi = 3.14f; //OK 접미사 필수
double d = 123.123d; //OK 
double d = 123.123; // OK - 접미사 생략가능 
 

타입의 불일치

- 타입이 달라도 저장범위가 넓은 타입에 좁은 타입의 값 저장, 허용

- 저장범위가 좁은 범위에 넓은 타입의 값 저장은 에러발생.

int i = 'B'; // OK, 문자 'A'의 유니코드인 66이 변수 i에 저장
long l = 122; // OK, int 보다 long이 더 범위가 넒음
double d = 3.14f; //OK, float보다 double이 범위가 넓음

int i = 0x123456789; //error, int 범위를 넘는 값
float f = 3.14; //error , float보다 double 범위가 넓음

byte b = 64; //OK, byte와 short는 int타입의 리터럴 사용, 단 해당 타입의 변수가 저장될 수 있는 범위에 속해야함
short s = 0x1234; //OK
 

문자 리터럴

- char 타입

- ' a' 와 같이 작은따옴표로 문자하나를 감싼 것 // 'aa' => error

- '' 작은따옴표 안에 반드시 하나의 문자 필요, 공백은 허용

char ch = ''; //error, 아무것도 넣지 않는 것 불가
char ch = ' '; //OK, 공백 넣는 것은 가능
 

문자열 리터럴

- String 타입

- "aa" 와 같이 큰 따옴표로 감싼 것 // "a" => OK

- "" 큰따옴표 안에 아무런 문자 넣지않는 것 허용

- 어떤타입의 변수도 문자열과 덧셈연산 수행시 결과는 문자열이 됨.

- 덧셈연산자 이용하여 문자열 결합가능

String name ="Hello" +"Java"; // name은 "HelloJava"
 

형식화된 출력 - printf( )
- 지시자를 통해 변수값을 여러형식으로 변환출력

지시자 종류
- %b : boolean 형식으로 출력
- %d : decimal (10진수) 형식으로 출력
- %o : octal (8진수) 형식으로 추력
- %x, %X : hexa-decimal (16진수) 형식으로 추력
- %f : floating - point (부동소수점) 형식으로 출력
- %e, %E : exponent (지수) 형식으로 출력
- %c : character (문자) 형식으로 출력
%s : string (문자열) 형식으로 출력

 

 

 

 

 

 

 

 

 

 

반응형