기본적으로 모든 정수 기본 데이터 유형 (byte, short, int, long)은 Java 컴파일러에서 int 유형 으로 처리됩니다 . 들어 바이트 와 짧은 만큼 자신에게 할당 된 값이 그 범위에서와 같이, 문제 및 필요 없음 접미사가 없습니다. byte 및 short에 지정된 값 이 범위를 초과하면 명시 적 유형 캐스팅이 필요합니다.
전의:
byte b = 130; // CE: range is exceeding.
이를 극복하기 위해 유형 캐스팅을 수행합니다.
byte b = (byte)130; //valid, but chances of losing data is there.
Long 데이터 타입의 경우 번거 로움없이 정수 값을 수용 할 수 있습니다. 다음과 같이 할당한다고 가정합니다.
Long l = 2147483647; //which is max value of int
이 경우 L / l과 같은 접미사가 필요하지 않습니다. 기본값으로 2147483647은 Java 컴파일러가 int 유형으로 간주됩니다. 내부 유형 캐스팅은 컴파일러에 의해 수행되며 int는 Long 유형으로 자동 승격됩니다.
Long l = 2147483648; //CE: value is treated as int but out of range
여기서 우리는 리터럴 2147483648을 자바 컴파일러에 의해 long 타입으로 취급하기 위해 접미사를 L로 넣어야합니다.
그래서 마침내
Long l = 2147483648L;// works fine.
1
과l
와0
함께O
(등), 당신의 우선 순위 (글꼴 권리를 설정하는 것입니다 당신이 할 수있는 경우 ) 그런 다음 Shift 키를 놓치지 않도록 걱정하십시오.