-21억 정도 ~ +21억 정도
까지만 저장이 가능하다.long
형에 넣어줘야 한다.L
을 붙여 저장해야 한다.long l = 1000000000000L;
l = 1_000_000_000_000L;
왜? java는 숫자면 일단 int
형으로 자동 인식 하기 때문에 "이것은 Long 타입이야~" 라고 표시를 해줘야 한다.뒤에 F
를 붙여 저장해야 한다.
double d = 3.14123456789;
float f = 3.14123456789F;
왜? java는 실면 일단 double
형으로 자동 인식 하기 때문에 "이것은 float 타입이야~" 라고 표시를 해줘야 한다.
double 처럼 깔끔하게, 큰 값을 저장하지는 못한다.
절대 변하지 않는 값
final String KR_COUNTRY_CODE = "+82";
final double PI = 3.141592;
final String DATE_OF_BIRTH = "2023-12-31";
int score = 100;
float scoreF = (float) score;
double scoreD = (double) score;
float scoreF = 93.3F;
double scoreD = 98.8;
int scoreFI = (int) scoreF
int scoreDI = (int) scoreD
int -> long -> float -> double
(자동 형변환)double -> float -> long -> int
(수동 형변환)더 큰 범위로 갈 때에는 자동 형변환이 되지만,
더 작은 범위로 갈 때에는 값이 잘리기 때문에 자동 형 변환이 되지 않는다.
int scoreI = 100;
double scoreD = scoreI;
String.valueOf(<숫자>)
Integer.toString(<숫자>)
String s1 = String.valueOf(100);
s1 = Integer.toString(100);
System.out.println(100); // 93
Integer.parseInt(”숫자”)
Double.parseDouble(”숫자”)
int i = Integer.parseInt("93");
System.out.println(i); // 93
double d = Double.parseDouble("98.8");
System.out.println(d); // 98.8
4, 5 -> 헷갈리니까, 타겟 클래스를 사용하면 된다고 생각하면 될 듯 싶다.
String.valueOf()
Integer.parseInt()
Double.parseDouble()