-
[JAVA]상수,리터럴,형 변환Languages/Java 2021. 2. 15. 23:18반응형
상수
상수 : 변하지 않는 값
상수를 선언 : final 키워드 사용
선언된 상수는 다른 값을 대입 할 수 없음
PI = 3.15; //에러남
프로그램 내에서 변경되지 말아야하는 값을 상수로 선언 해 두고
혹시 변경되는 경우 선언된 값만 수정package first; public class constant { public static void main(String[] args) { final int MAX_NUM = 100; final double PI = 3.14F; final int studnet_num = 30; int num = 0; if ( num == 30) {} System.out.println(studnet_num); } }
리터럴 : 프로그램에서 사용하는 모든 숫자 값 논리 값
예) 10,.314, 'A'
리터럴에 해당되는 값은 특정 메모리 공간인 상수 풀에있음
필요한 경우 상수 풀에서 가져와서 사용
상수 풀에 저장 될때 정수는 int로 실수는 double로 저장
따라서 long아너 float값으로 저장해야하는경우 식별자
(l,i,f,F)를 꼭 명시!!!!!!!
형 변환 (type conversion)
자료형은 각각 사용하는 메모리 크기와 방식이 다름
서로 다른 자료형의 값이 대입되는 경우 형 변환이 일어남
묵시적 형변환 : 작은수 에서 큰수로 덜 정밀한 수에서 더 정밀한 수로 대입되는 경우
명시적 형변환 : 묵시적 형 변환의 반대의 경우
변환 되는 자료형을 명시해야함 자료의 손실이 발생 할 수 잇음implicitConversion
package first; public class implicitConversion { public static void main(String[] args) { byte bnum = 10; int num = bnum; System.out.println(num); long lnum = 10; float fnum = lnum; // float 더정밀한 수 System.out.println(fnum); double dnum = fnum + num; System.out.println(dnum); } }
explicitconversion
package first; public class explicitconversion { public static void main(String[] args) { int inum = 1000; byte bnum = (byte)inum; System.out.println(inum); System.out.println(bnum); double dnum =3.14; inum = (int)dnum; System.out.println(inum); float fnum = 0.9F; int num1 =(int)dnum + (int)fnum; //실수가 빠져서 3+0 int num2 = (int)(dnum + fnum); //실수를 먼저 더함 3.14+0.9=4.4.01 //int값으로 변환했기에 값은 4 System.out.println(num1); System.out.println(num2); } }
반응형'Languages > Java' 카테고리의 다른 글
[JAVA]JAVA필수 연산자2 (0) 2021.02.16 [JAVA]JAVA필수 연산자 1 (0) 2021.02.16 [JAVA]변수2 + 문자형변환 (0) 2021.02.15 [JAVA]진법 이용해서 출력값 확인 (0) 2021.02.15 [JAVA] 정수형 변수 초기화 하기 (0) 2021.02.11