본문 바로가기
Programming/Java

[JAVA] 변수(Variables)

by 코딩하는 랄로 2023. 9. 19.
728x90

변수(Variables)란?

프로그래밍 언어에서 변수란 값을 담는 공간을 뜻한다. 여러 타입의 값을 담는 공간이기 때문에 사용을 하기 전에 이 공간에 대해서 특정 변수를 담는다고 선언을 해주는 과정이 필요하다.

 

이 과정을 변수의 선언 또는 초기화라고 하고 방법으로는 다음과 같다.

[변수타입]   [변수명]   =   [값];

변수를 선언 후에는 해당 변수에는 선언시 지정한 변수타입만을 담을 수 있기 때문에 다른 타입을 담으려고 할 시 오류가 발생한다.

 

 

 

변수명

프로그래밍시 변수를 선언할 때에는 직관적인 이름을 사용하여야 한다. 예를 들어,

int age = 20;   //나이 변수

이렇듯, 나이에 해당하는 변수는 age라고 선언해 주어 다른 개발자가 코드를 보았을 때 해당 변수의 역할에 대해서 직관적으로 알 수 있는 이름을 지정해주어야 한다.

 

추가적으로, 변수명 선언에는 다음과 같은 규칙(약속)이 존재한다.

  • 변수명은 알파벳, 숫자, _, $로 구성된다.
  • 숫자로 시작해서는 안된다
  • 띄어씌기해서는 안된다,
  • 대소문자가 구분된다. -> 일반 변수의 경우 소문자로 시작
  • 중복이 불가

띄어씌기가 불가능하기 때문에 띄어씌기에 해당하는 부분은 대문자를 사용하여 표시하여 준다. ex) averageAge // 평균 나이

 

 

 

지역변수(Local Variable)

지역 변수란 중괄호({}) 내에서 선언된 변수를 일컫는다. 지역변수는 중괄호내에서만 유효한 변수이기 때문에 지역변수에서 선언된 변수는 중괄호 밖에서 사용할 수 없다.

 

즉, 중괄호과 종료되는 시점에 중괄호 내에 있는 지역 변수들은 소멸된다.

 

 

 

변수의 Type

자바에는 변수의 타입은 여러가지가 존재한다. 그 중 가장 흔하게 쓰이는 변수 타입으로는 다음과 같다.

  • int : 정수 타입
  • long : int보다 더 넓은 범위의 정수 타입
  • float : 실수 타입
  • double : float보다 범위가 더 넓은 실수 타입
  • boolean : true or false
  • char : character 타입 (문자 하나)
  • String : 문자열

자바는 변수에 따라 배정되는 메모리가 달라지기 때문에 해당 변수가 허용하는 범위에 대해서 대략적으로 인지하고 사용하여야 한다. 

 

 

 

변수의 Casting

형변환이라고 하는 변수의 casting이란 변수의 타입을 변환시켜주는 것을 뜻한다. casting은 암묵적 형변환, 명시적 형변환 두가지로 구분되어 진다.

 

암묵적 형변환이란, 이름 그대로 명시하지 않아도 자바 컴파일러가 알아서 형변환을 해줌을 의미한다. 암묵적 형변환은 작은 타입에서 큰 타입으로의 형변환만 가능하다. 여기서 크기는 타입에 할당되는 byte의 크기를 의미한다. 

 

즉, char -> int -> long -> float -> double 에서의 형변환은 암묵적 형변환을 허용한다.

 

명시적 형변환은 암묵적 형변환에 반대로의 형변환이다. 그렇기 때문에 개발자가 직접 원하는 형태의 타입을 명시하여 주어야 하는데 그 방법으로는 다음과 같다.

double n1 = 100;
int n2 = (int)n1;

명시적 형변환의 경우, 데이터의 손실이 발생할 수 있기 때문에 주의하여 사용하여야 한다.

 

 

 

728x90

'Programming > Java' 카테고리의 다른 글

[Java] 연산자 - SCE, 비트  (0) 2023.09.20
[Java]연산자 - 부호, 증감, 비교, 논리  (0) 2023.09.20
[JAVA] 연산자 - 대입  (0) 2023.09.20
[JAVA] 입력 - BufferedReader(ft. BufferedWriter)  (0) 2023.09.19
[JAVA] 입력 - Scanner  (0) 2023.09.19