Java04 변수와 리터럴,변수의 접미사
/*
리터럴의 접두사와 접미사.. 접미사는 대소문자 구별안함
정수형 100L -> long타입 20 int타입
실수형 1.4f -> float타입, d ->double타입(잘 안쓰임..생략가능)
*
*
* */
boolean power = true; // 불린타입은 트루,폴스만 가능
char c = 'A'; //문자형 char 타입 ''
String a = "hello"; //문자열 타입 ""
byte b = 127; //int타입 byte타입의 범위: -128~127
float f = 3.14f; //플로트형이면 반드시 f 붙여줘야함
double d = 3.14; //double타입이면 d 생략가능
// \n 줄자꿈 문자(개행문자)
// 10. = 10.0
// .10 = 0.10
// 10f = 10.0f
// 1e3 e^3는 10^3을 의미, 기호 e는 실수형에서 사용된다.
// 실수형인데 접미사가 생략되어 있으니까 double타입이라서 le3 = 1000.0d
/*
* 변수와 리터럴의 타입 불일치
* 1. 범위가 변수>리터럴인 경우 ok
* int i = 'A'; 문자 A는 유니코드로 65라서..65는 int의 범위에 들어감
* int > char
* long l = 123; 123은 인트타입인데 더 범위가 넓은 long타입에 넣으니 문제없음
* long > int
* double d = 3.14f double > float
*
* 2.범위가 변수<리터럴인 경우, 에러
* long l = 3.14f long < float
* long타입(정수형)은 8byte,float타입(실수형)은 4byte라서 될거같지만
* 실수형은 정수형보다 저장범위가 더 넓어서 에러 발생
*
* float f = 3.14; float < double 이라서 안됨
* 그냥 3.14써있으면 더블타입이니까 더 큰 더블타입을 플로트타입에 넣을 수 없다.
*
*
* 3.byte,short 변수에 int 리터럴 저장가능
* 바이트와 숏타입의 리터럴은 없다 그래서 int리터럴을 사용한다
*
* byte b = 100; ok. byte의 범위 -128~127
* byte b = 128; error. byte의 범위를 벗어남
* */
boolean power2 = false;
System.out.println(power2);
byte bb = 127;
int oct = 010; //8진수, 10진수로 8
int hex = 0x10; //16진수, 10진수로 16
System.out.println(oct);//println메소드는 값을 10진수로만 출력한다
System.out.println(hex);
long l = 1000_000_000; //int타입의 값을 long타입에 저장함
long l2 = 10_000_000_000L; //인트범위 벗어나면 long타입되서 L 붙여야함
double dd = 3.14f; //더 작은 플로트타입을 더 큰 더블타입에 대입했으니 가능.
Author And Source
이 문제에 관하여(Java04 변수와 리터럴,변수의 접미사), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gogomango/Java04-변수와-리터럴변수의-접미사-prw9wh2w저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)