본문 바로가기
GD's IT Lectures : 기초부터 시리즈/자바(JAVA) 기초부터 ~

[자바(JAVA)] 변수와 자료형

by GDNGY 2023. 4. 27.

4. 변수와 자료형

변수는 프로그램에서 사용되는 데이터를 저장하는 데 사용되는 메모리 공간입니다. 자료형은 변수에 저장되는 데이터의 종류를 결정합니다. 자바에서는 기본 자료형과 참조 자료형, 그리고 기본 자료형의 래퍼 클래스(wrapper classes)를 제공합니다. 이들은 자바 프로그램에서 데이터를 저장하고 처리하는 데 사용되는 자료형입니다.

 

4.1. 변수 선언

변수를 사용하기 전에 먼저 선언해야 합니다. 변수 선언은 자료형과 변수 이름을 사용하여 이루어집니다. 변수 이름은 알파벳, 숫자, 밑줄(_) 또는 달러 기호($)로 구성될 수 있으며, 숫자로 시작할 수 없습니다.

int myInteger; // 정수형 변수 선언

 

4.2. 기본 자료형 (Primitive data types)

자바에서는 여러 가지 기본 자료형이 있으며, 이들은 값을 직접 저장합니다. 기본 자료형은 정수, 실수, 문자, 논리로 구분되며, 메모리 효율과 연산 속도 측면에서 이점이 있는 자료형입니다. 자바에서는 8가지 기본 자료형을 제공합니다.

  • byte: 8비트 정수형 자료형으로, 값의 범위는 -128부터 127까지입니다.
  • short: 16비트 정수형 자료형으로, 값의 범위는 -32,768부터 32,767까지입니다.
  • int: 32비트 정수형 자료형으로, 값의 범위는 -2,147,483,648부터 2,147,483,647까지입니다.
  • long: 64비트 정수형 자료형으로, 값의 범위는 -9,223,372,036,854,775,808부터 9,223,372,036,854,775,807까지입니다.
  • float: 32비트 실수형 자료형으로, 단정도 부동소수점 숫자를 표현합니다.
  • double: 64비트 실수형 자료형으로, 배정도 부동소수점 숫자를 표현합니다.
  • char: 16비트 유니코드 문자형 자료형으로, 문자 하나를 표현합니다.
  • boolean: 논리형 자료형으로, true 또는 false 값을 가집니다.
int[] myArray = new int[5]; // 정수형 배열 참조 변수 선언 및 초기화
ArrayList<String> myList = new ArrayList<>(); // ArrayList 참조 변수 선언 및 초기화

 

4.3. 참조 자료형 (Reference data types)

참조 자료형은 객체를 가리키는 데 사용되는 메모리 주소를 저장하는 자료형입니다. 참조 자료형은 객체 지향 프로그래밍의 핵심 개념인 클래스를 기반으로 합니다. 참조 자료형에는 다음과 같은 종류가 있습니다.

  • 클래스: 사용자 정의 클래스와 자바 라이브러리에서 제공하는 클래스 모두 포함합니다.
  • 인터페이스: 인터페이스를 구현한 객체의 참조를 저장합니다.
  • 배열: 동일한 자료형의 여러 개의 값을 연속적으로 저장하는 데 사용되는 자료구조입니다. 배열은 기본 자료형 및 참조 자료형 모두를 저장할 수 있습니다.

 

4.4. 기본 자료형의 래퍼 클래스 (Wrapper classes)

기본 자료형의 래퍼 클래스는 각 기본 자료형을 객체로 사용할 수 있게 해 줍니다. 자바에서는 다음과 같은 래퍼 클래스를 제공합니다.

  • Byte: byte 기본 자료형에 대한 래퍼 클래스입니다.
  • Short: short 기본 자료형에 대한 래퍼 클래스입니다.
  • Integer: int 기본 자료형에 대한 래퍼 클래스입니다.
  • Long: long 기본 자료형에 대한 래퍼 클래스입니다.
  • Float: float 기본 자료형에 대한 래퍼 클래스입니다.
  • Double: double 기본 자료형에 대한 래퍼 클래스입니다.
  • Character: char 기본 자료형에 대한 래퍼 클래스입니다.
  • Boolean: boolean 기본 자료형에 대한 래퍼 클래스입니다.

래퍼 클래스는 다음과 같은 경우에 사용됩니다.

  1. 객체 지향 프로그래밍에서 객체로 다루어야 하는 경우
  2. 컬렉션 프레임워크와 같이 객체만 저장할 수 있는 자료구조에 기본 자료형을 저장할 때
  3. 오토 박싱(Autoboxing)과 오토 언박싱(Autounboxing)을 통해 기본 자료형과 래퍼 클래스 간의 자동 변환을 지원하여 코드 작성을 간편하게 합니다.

예를 들어, ArrayList는 객체만 저장할 수 있기 때문에 기본 자료형을 저장하려면 해당 래퍼 클래스를 사용해야 합니다.

ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(1); // 오토 박싱: 기본 자료형 int가 Integer 래퍼 클래스로 자동 변환됩니다.
int firstNumber = numbers.get(0); // 오토 언박싱: Integer 래퍼 클래스가 기본 자료형 int로 자동 변환됩니다.

이처럼 자바의 기본 자료형, 참조 자료형, 그리고 기본 자료형의 래퍼 클래스는 데이터를 효율적으로 저장하고 처리하는 데 필요한 다양한 자료형을 제공합니다. 이들은 각각의 특징과 용도에 따라 사용되어, 자바 프로그램의 다양한 요구 사항을 충족시키는 데 기여합니다.

반응형

댓글