본문 바로가기

Java

[java] 자바 - 변수

자바를 주 언어로 사용하지만 부끄럽게도 많은 것을 알지 못하고 설사 아는 부분도 남에게 제대로 설명하지 못하는 부분도 있습니다. 개인적으로 기초가 중요하다 생각하고 객체지향언어중 하나인 자바와 친해지기 위해 학습하고 정리하는 포스팅입니다. (Java 개발 환경설정은 따로 포스팅하지 않습니다. )

1. 변수


프로그램은 작업을 처리하는 과정에서 필요에 따라 데이터를 메모리에 저장합니다. 이때 저장하는 용도로 변수를 사용하며 값을 저장할 수 있는 메모리 공간을 의미합니다. 변수라는 말을 가지게 된 이유는 저장된 데이터의 값이 수시로 변동될 수 있기 때문입니다. 요약해서 변수하나의 값을 저장할 수 있는 메모리 공간을 말합니다.

1-1. 변수의 선언


변수를 사용하기 앞서 변수를 선언해야 하며 선언데이터의 타입변수의 이름을 설정해야 합니다.

int age;
double value;
String id;
  • int, double, String- 데이터 타입
  • age, value, id - 변수의 이름

변수는 아래와 같이 여러개 동시에 선언할 수도 있습니다.

int x, y, z;

변수의 이름을 선언할 때 자바 언어에서 지정한 규칙을 따라야 합니다. 규칙은 다음과 같습니다.

  • 첫번째 글자는 문자, $, _ 이어야 하고 숫자로 시작할 수 없다.
  • 영어 대소문자가 구분된다.(필수)
  • 첫 문자는 영어 소문자로 시작하고 다른 단어가 붙을시 첫 문자를 대문자로 표기(카멜표기법 참고 ex : nickName)
  • 문자 수의 제한은 없다.
  • 자바 예약어 사용 불가(필수 예약어 참고)

1-2. 변수의 사용


double height = 184.3;
int age = 29;

위처럼 직접 입력된 값을 리터럴(literal)이라 부르며 정수, 실수, 문자, 논리 리터럴로 구분됩니다.

  • 정수 리터럴 <데이터 타입 - byte, char, short, int, long>
    • 10진수 - 0, 32, -102
    • 8진수 - 02, -06
    • 16진수 - 0x 또는 0X로 시작하고 0-9, A-F , a-f로 구성)
  • 실수 리터럴 <데이터 타입 - float, double>
    • 소수점이 있는 리터럴 10진수 - 0.25, -3.14
    • 대문자 E or 소문자 e가 있는 리터럴은 10진수 지수와 가수로 간주한다. - 5E7(5 x 10^7), 0.12E-5(0.12 x 10^-5)
  • 문자 리터럴 <데이터 타입 - char>
  • 문자열 리터럴 <데이터 타입 - String>
    • "대한민국", "헬로우", "월드", "HelloWorld"
    • 큰 따옴표(")로 묶은 텍스트는 문자열로 간주한다.
  • 논리 리터럴 <데이터 타입 - boolean>
    • true, false
    • On or Off 의 개념
    • 1 과 0 의 개념

1-3. 변수의 사용 범위


변수는 선언된 블록 내에서만 사용 가능합니다. 자바는 메소드 블록 내에서 { }, 조건문의 if( ) { }, 반복문의 for( ) { }, while( ) { } 등 중괄호를 가질 수 있는데 각 블록 안에 선언된 변수들은 해당 블록내에서만 사용이 가능합니다.

Ex

public static void main(String[] args){
    int num = 10;

    for(int i=0; i<num; i++){
            // 변수 i 사용 가능
            // 변수 num 사용 가능
    }
    //변수 num 사용 가능
    //변수 i 사용 불가
}

출처 - 이것이 자바다