JAVA1 8.1. 변수의 정의
자연수 : 1,2,3,4…
정수 integer
int a = 1;
int a = 1.1; // 에러
real number 실수
double b = 1.1;
변수 지정시 데이터 타입 지정해주고 그에 따른 값과 연산법을 잘 지정해주어야 한다
값을 넣을 때는 까다롭지만 지정된 데이터타입이 있기에 그게 아닌 정보가 들어간다면 아예 컴파일이 안되므로, 반대로 그 안에 들어간 값이 성공했다면 그 데이터는 타입 확인 필요없이 반드시 정수나 문자열 같은거라는걸 확신가능
그래서 꺼낼 때마다 확인할 필요가 없는 편리함이 있다
JAVA1 8.2. 변수의 효용
System.out.println("Hello, egoing… egoing… bye");
전에 .replace("" ,"")으로 대체하는 법을 배웠지만 변수를 이용하는게 더 좋다
String name = "egoing";
System.out.println("Hello, "+name+"… "+name+"… bye"); // 위의 str name변수가 들어감
name 변수를 하나 바꾸면 println()에 들어가있는 모든 name이 같이 바뀌므로 아주아주 효율적으로 변함
코드를 나만 보는게 아닌 협업을 하기에 내가 아닌 다른 사람이 보아도 해당 코드가 뭔지 빠르게 알 수 있도록 코드를 짜는 것이 정말 중요
System.out.println(10); // 이렇게하면 10이 출력되겠지만 이것의 데이터타입이나 세부정보를 다른 사람은 알기 어렵다. 아래처럼 하는걸 추천
double VAT = 10.0;
System.out.println(VAT);
JAVA1 8.2. 데이터 타입의 변환(casting)
double a = 1.1;
double b = 1; // 문제없음. 1.0으로 출력
System.out.println(b);
정수integer 1을 실수로 컨버팅했지만 에러도 없고 잃어버리는 값이 없다
※ 에러메시지 확인 & 해결방법 보는 법 ※
위의 스샷에서 double 1.1을 int로 강제 변환 시켜서 1.0이 되기 때문에 값 손실이 일어난다. 값 손실이 일어나기에 자동적으로 변환해주지 않음
double b=1; // 자동 캐스팅
double b2 = (double) 1; // 수동 캐스팅. 명시적으로 바꿔준 것
이 둘은 같은 코드
*int to str 캐스팅 검색
String f = Integer.toString(1); // 정수에서 문자열로 변환
.getClass() : 해당 변수가 어떤 타입인지 알려줌(파이썬의 type()함수 역할)
System.out.println(b2.getClass());
'JAVA > 생활코딩 JAVA1 (renewal)' 카테고리의 다른 글
생활코딩 JAVA1. 11 : 입력과 출력 // arguments & parameter (0) | 2022.01.02 |
---|---|
생활코딩 JAVA1. 10 : 디버거(debugger) , 디버깅, 브레이크포인트 (0) | 2022.01.01 |
생활코딩 JAVA1. 09 : 프로그래밍 & 맛보기& import & 패키지 예시 (0) | 2022.01.01 |
생활코딩 JAVA1. 06~07 : 데이터타입, 사칙연산,문자열 (0) | 2022.01.01 |
생활코딩 JAVA1. 04~05 : 자바 설치 & 할 수 있는 것들 (0) | 2022.01.01 |