본문 바로가기
Java/생활코딩

5/14(2) 생활코딩

by SKim입니다 2020. 5. 15.

오늘의 진도:

 언어 - JAVA1

  변수

 

(1) 변수의 정의

수학에서의 변수: 값이 변할 수 있는 문자

→ a=1로 지정하면 이제부터 a는 1이 되는 것이다.

 

그러나 다른 컴퓨터 언어들과 다르게,

자바와 같은 컴퓨터 언어들은 이렇게 하면 에러가 난다.

∵ 변수를 만들 때,

그 변수 안에 어떤 데이터 타입이 들어갈 수 있는지를 지정해줘야 한다.

 

integer 정수 → int

real number 실수 → (정확한 표현이 아니지만) double

 

why? 불편하게 지정해놓는가?

trade off와 관련있다.

길가에 왼쪽 컵이 있다면 의심없이 마시기 어려울 것이다.

그러나 오른쪽 음료수가 누가 뜯은 흔적 없이 있다면 의심없이 마실 수 있을 것이다.

 

즉, 자바와 같은 컴퓨터 언어들의 변수는 오른쪽 음료수의 용기와 같은 것이다.

→ 이 변수에는 반드시 정수가 온다 또는 문자열이 온다고 정의를 해놓으면

그것이 아닌 정보가 들어갈 때 자바가 컴파일이 안 돼서 동작을 안 한다.

 

즉, 어떤 값이 그 안에 들어가는 데 성공했다면,

그 안에 있는 값은 반드시 정수이거나 문자열이라는 것을 확신할 수 있는 것이다.

그래서 꺼낼 때마다 이 값이 정수인지 숫자인지 문자인지 확인하지 않아도 되는

굉장한 편리함을 제공한다.

(2) 변수의 효용

그냥 숫자 10을 적으면 그 값이 어떤 취지로 사용된 데이터인지에 파악하기가 어렵다.

그런데 VAT라는 변수로 만들면 그것이 부가가치세의 세율을 나타내는 것이라는 것을

다른 사람도, 미래의 나도 파악할 수 있다.

 

∴ 변수 이름을 잘 지정하는 것은 중요하다.

(3) 데이터 타입의 변환

캐스팅: 다른 데이터 타입으로 컨버팅하는 것

1(int)이 자동으로 1.0(double)으로 컨버팅되었다.

이 때 잃어버리는 값은 없다.

1.9(double)을 자동으로 1(int)로 컨버팅하면 0.9를 잃어버리므로

이클립스가 두 가지 방법을 제안하고 있다.

 

방법1) 1.9을 int라는 형태로 강제로 바꾸는 코드를 추가해주었다.

방법2) c의 데이터 타입을 double로 바꿔주었다.

즉, double을 int로 강제로 컨버팅하면 소수점 밑자리를 잃어버린다.

 

방법1을 참고했을 때, 맨 위에서 int인 b를 double로 컨버팅하려면

다음과 같이 하는 것이 명시적인 방법임을 알 수 있다.

 

그렇다면 1을 String으로 바꾸려면 어떻게 해야 할까?

검색어: java int to string casting

이렇게하면 결과는 문자인 1이 나온다.

정말 문자인지 확인하려면 다음과같이 입력하면 된다.

 

'Java > 생활코딩' 카테고리의 다른 글

5/15 생활코딩  (0) 2020.05.15
5/14 생활코딩  (0) 2020.05.14
5/12 생활코딩  (0) 2020.05.12
5/11 생활코딩 - Java 시작  (0) 2020.05.11

댓글