[Java] 변수 (Variable)

artp·2024년 12월 26일
0

java

목록 보기
2/32
post-thumbnail

변수(Variable)란?

프로그래밍에서 변수어떤 값을 저장하기 위한 이름을 가진 공간을 의미합니다. 여기서 공간이란 정확히 이야기하자면, 컴퓨터의 메모리를 가리킵니다. 변수를 사용하면 데이터를 효율적으로 관리하고 처리할 수 있습니다.

예를 들어, 10과 20이라는 숫자를 더한 결과를 저장하고 싶을 때, 변수를 사용하여 컴퓨터의 메모리 공간에 저장할 수 있습니다. 이렇게 하면 필요한 값을 다시 사용하거나 수정할 때, 변수의 이름만 사용하면 되므로 코드가 더 간결하고 이해하기 쉬워집니다.

변수 선언과 초기화

변수 선언

변수를 선언하면 컴퓨터의 메모리 공간을 확보해서 그곳에 데이터를 저장할 수 있습니다. 그리고 변수의 이름을 통해서 해당 메모리 공간에 접근할 수 있습니다. 쉽게 이해하면, 변수를 선언함으로써 데이터를 보관할 수 있는 공간을 만들고, 그 공간에 이름을 부여한다고 볼 수 있습니다.

변수 초기화

초기화란 변수를 선언함과 동시에 초기 값(첫 번째 값)을 저장하는 과정을 의미합니다. 선언과 초기화는 다음과 같은 방식으로 이루어집니다.

예제(Java)

public class Main {
	public static void main(String[] args) {
    	// 변수 선언 및 초기화
    	int a = 10; // 정수형 변수 a에 10 저장
        int b = 20; // 정수형 변수 b에 20 저장
        
        // 변수 사용
        int result = a + b; // 변수 a와 b의 값을 더해 result 변수에 저장
        
        // 결과 출력
        System.out.println("a와 b를 더한 결과: " + result); // a와 b를 더한 결과: 30

변수의 특징

변수는 데이터를 저장할 수 있는 이름을 가진 공간입니다. 이 공간에 저장된 값은 언제든 다른 값으로 덮어씌워질 수 있다는 특징이 있습니다. 이는 변수가 변할 수 있는 값을 저장함을 의미합니다.

예제(Java)

public class Main {
    public static void main(String[] args) {
        int number = 10; // 변수 number에 10 저장
        System.out.println("초기 값: " + number); // 출력: 초기 값: 10

        number = 20; // 변수 number에 20 저장 (값 덮어씌우기)
        System.out.println("변경된 값: " + number); // 출력: 변경된 값: 20
    }
}

실행 결과:

초기 값: 10  
변경된 값: 20

위 예제에서 변수 number는 처음에 10을 저장했다가, 이후에 20으로 값이 덮어씌워졌습니다. 이처럼 변수는 필요한 시점에 값을 변경할 수 있습니다.

변수의 자료형

프로그래밍 언어에서 변수는 특정 자료형(Data Type)을 가지며, 자료형에 따라 저장할 수 있는 데이터의 종류와 크기가 결정됩니다.

기본 자료형(Java):

  1. 정수형:
    • byte (1바이트)
    • short (2바이트)
    • int (4바이트)
    • long (8바이트)
  2. 실수형:
    • float (4바이트)
    • double (8바이트)
  3. 문자형:
    • char (2바이트) - 단일 문자 저장
  4. 논리형:
    • boolean (1비트) - true 또는 false 값만 저장

자주 사용하는 자료형

다음 자료형은 일반적으로 자주 사용되며, 코드 작성 시 기본적으로 고려하는 자료형입니다.

1. 정수형(int, long)

  • int: 기본 정수형. 크기는 4바이트이며, 대부분의 정수 연산에 사용됩니다.
  • long: 더 큰 정수값이 필요한 경우에 사용하며, 크기는 8바이트입니다. 4바이트(약 20억)를 넘는 경우 사용하며 l, L 모두 사용 가능하나 l은 숫자 1과 헷갈릴 수 있어 대문자인 L 사용을 권장합니다.
  • 예제:
	int age = 25; // 정수
	long population = 8000000000L; // 정수 값이 크면 'L'을 붙여 long으로 표현

2. 실수형(double)

  • double: 기본 실수형, 크기가 8바이트이며, 정밀도가 높아 대부분의 실수 연산에 사용됩니다.
  • 실수는 고민 없이 double을 사용한다고 생각하면 됩니다.
  • 예제:
	double price = 19.99; // 실수

3. 불린형(boolean)

  • boolean: 참(true) 또는 거짓(false)을 표현합니다.
  • 조건문, 반복문에서 자주 사용합니다.
  • 예제:
	boolean isStudent = true;
    boolean isOver18 = agv > 18; // 조건에 따라 true/false

4. 문자열(String)

  • String: 문자열을 표현, 단일 문자 또는 문자열을 모두 다룰 수 있습니다.
  • 문자 하나를 다룰 때도 char 대신 String을 사용하는 것이 일반적입니다.

예제(Java)

public class Main {
    public static void main(String[] args) {
        int age = 25; // 정수형 변수
        double height = 175.5; // 실수형 변수
        char grade = 'A'; // 문자형 변수
        boolean isStudent = true; // 논리형 변수

        System.out.println("나이: " + age); // 출력: 나이: 25
        System.out.println("키: " + height); // 출력: 키: 175.5
        System.out.println("학점: " + grade); // 출력: 학점: A
        System.out.println("학생 여부: " + isStudent); // 출력: 학생 여부: true
    }
}

실행 결과:

나이: 25  
키: 175.5  
학점: A  
학생 여부: true

거의 사용하지 않는 자료형

다음 자료형은 일반적인 코드에서는 잘 사용되지 않습니다.

1. byte

  • 1바이트 크기의 정수형, 범위는 -128 ~ 127입니다.
  • 표현 범위가 너무 작아 잘 사용되지 않습니다. Java는 기본적으로 4바이트 크기의 int를 사용합니다.
  • 파일을 바이트 단위로 다루는 작업(파일 전송, 파일 복사)에서 사용합니다.

2. short

  • 2바이트 크기의 정수형, 범위는 -32,768 ~ 32,767입니다.
  • 표현 범위가 작아 잘 사용되지 않습니다. Java는 기본적으로 4바이트 크기의 int를 사용합니다.

3. float

  • 4바이트 크기의 실수형, 정밀도가 double보다 낮습니다.
  • 정밀도가 낮아 잘 사용되지 않으며, 대부분 double을 사용합니다.

4. char

  • 2바이트 크기의 문자형, 단일 문자를 저장할 수 있습니다.
  • 실용성이 떨어져 잘 사용되지 않으며, 문자 하나를 표현하는 경우에도 문자열(String)을 사용합니다.

변수 명명 규칙

Java에서 변수의 이름을 짓는 데는 규칙과 관례가 있습니다.
규칙은 반드시 따라야 하며, 지키지 않을 경우 컴파일 오류가 발생합니다.
관례는 필수는 아니지만, 전 세계 개발자들이 따르는 표준이므로 사실상 규칙처럼 여겨집니다.

규칙

1. 변수 이름은 숫자로 시작할 수 없습니다. 그러나 숫자를 이름에 포함하는 것은 가능합니다.

  • 1num, 1st 불가능
  • num1, myVar1 가능

2. 변수 이름에는 공백이 들어갈 수 없습니다.

  • my var, user account 불가능

3. 자바의 예약어를 변수 이름으로 사용할 수 없습니다.

  • int, public, class 불가능

4. 변수 이름에는 영문자(a-z, A-Z), 숫자(0-9), 달러 기호($) 또는 밑줄(_)만 사용할 수 있습니다.

관례

1. 낙타 표기법 (Camel Case)

낙타 표기법(Camel Case)은 프로그래밍에서 변수, 함수, 클래스 등의 이름을 작성할 때 널리 사용되는 표기법입니다.

  • 여러 단어로 구성된 이름에서 첫 단어는 소문자로 시작하고, 이후 단어는 첫 글자를 대문자로 작성합니다.
  • 공백 없이 단어를 구분할 수 있도록 도와주며, 이름의 가독성과 이해도를 높입니다.
  • orderDetail, myAccount

2. 의미 있는 이름 사용

  • 변수 이름은 용도와 역할을 명확하게 설명해야 합니다.
  • studentCount, maxScore
  • a, b 같은 변수명 사용은 지양(꼭 필요한 경우에만 사용)

3. 자바(Java) 언어의 관례

  • 클래스 이름은 대문자로 시작
    • 클래스 이름의 첫 글자는 대문자로 시작하며, 이후 단어는 낙타 표기법을 이용합니다.
    • Person, OrderDetail
  • 변수 및 메서드는 소문자로 시작
    • 변수 및 메서드는 소문자로 시작하며, 낙타 표기법을 사용합니다.
    • firstName, userAccount
  • 상수는 대문자와 언더바를 사용
    • 상수는 모두 대문자로 작성하며, 단어 사이에 언더바(_)를 사용합니다.
    • USER_LILMIT, MAX_VALUE
  • 패키지는 모두 소문자로 작성
    • 패키지 이름은 소문자만 사용합니다.
    • org.spring.boot

정리

  • 변수는 저장된 값을 언제든 변경할 수 있습니다.
  • 변수의 자료형은 변수에 저장할 데이터의 종류를 정의합니다.
  • Java에서는 변수 선언 시 자료형을 반드시 명시해야 하며, 자료형에 따라 메모리 사용량과 값의 범위가 달라집니다.
  • 변수 이름은 규칙과 관례를 따라 작성해야 합니다:
    • 규칙: 반드시 지켜야 하며, 지키지 않으면 컴파일 오류가 발생합니다.
    • 관례: 가독성과 협업을 위해 따라야 합니다.
  • 자주 사용하는 자료형:
    • 정수: int, long (int가 기본, 큰 값은 long 사용)
    • 실수: double (실수는 기본적으로 double 사용)
    • 불린형: boolean (true 또는 false 표현)
    • 문자열: String (문자나 문자열을 다룰 때 사용)
  • 의미 있는 변수 이름을 사용하면 코드 가독성이 향상됩니다.
profile
donggyun_ee

0개의 댓글