변수란 변하는 수라는 뜻으로, 하나의 값을 저장할 수 있는 메모리 공간을 의미합니다. 프로그래밍에서 변수는 데이터를 저장하거나, 저장된 값을 수정, 읽는 데 사용됩니다.
변수를 선언하는 이유는 프로그램에서 사용할 값을 저장할 공간을 마련하기 위해서입니다. 예를 들어, 나이, 이름, 점수 등 다양한 데이터를 저장할 공간이 필요합니다.
변수를 선언하려면 변수의 타입과 변수 이름을 지정해야 합니다.
int age; // 정수형 변수를 선언
변수에 값을 저장하려면 대입 연산자(=) 를 사용합니다.
int age = 25; // 정수형 변수에 25를 저장
System.out.println(age); // 출력: 25
변수의 초기화란 변수를 선언한 후 처음으로 값을 저장하는 것을 말합니다. 변수는 초기화하지 않으면 사용할 수 없습니다. 특히, 지역 변수(Local Variable) 는 값을 초기화하지 않고 읽으려고 하면 컴파일 오류가 발생합니다.
int x; // 선언만 하고 초기화하지 않음
System.out.println(x); // 오류 발생: 초기화되지 않은 변수
int x = 10; // 변수 초기화
System.out.println(x); // 출력: 10
프로그래밍에서 값의 타입은 크게 세 가지로 구분됩니다.
하나의 문자를 표현합니다.
예: 'A', 'B', '1'
정수(int, long): 예: 10, -5
실수(float, double): 예: 3.14, -2.71
참(true) 또는 거짓(false)을 표현합니다.
예: true, false
데이터를 저장하는 메모리 공간 (변할 수 있음)
한 번 값이 저장되면 변경할 수 없는 공간 (final 키워드 사용)
코드에 직접 작성된 값 (예: 10, "Hello")
int number = 10; // 변수에 정수 리터럴 10 저장
final double PI = 3.14; // 상수 선언 (변경 불가능)
System.out.println(number); // 출력: 10
System.out.println(PI); // 출력: 3.14
접두사: 2진수(0b), 8진수(0), 16진수(0x)
접미사: L(long), F(float), D(double)
int binary = 0b1010; // 2진수
int octal = 012; // 8진수
int hex = 0xA; // 16진수
System.out.println(binary); // 출력: 10
System.out.println(octal); // 출력: 10
System.out.println(hex); // 출력: 10
문자는 작은따옴표(' ') 로 감싸고, 문자열은 큰따옴표(" ") 로 감쌉니다.
char ch = 'A';
String str = "Hello, World!";
System.out.println(ch); // 출력: A
System.out.println(str); // 출력: Hello, World!
문자열은 + 연산자를 사용하여 결합할 수 있습니다.
String name = "John";
int age = 25;
System.out.println(name + "의 나이는 " + age + "입니다."); // 출력: John의 나이는 25입니다.
변수 간 값을 교환하려면 임시 변수를 사용합니다.
int a = 5;
int b = 10;
// 임시 변수 temp 사용
int temp = a;
a = b;
b = temp;
System.out.println("a: " + a); // 출력: a: 10
System.out.println("b: " + b); // 출력: b: 5
데이터를 Stack 영역에 직접 저장
정수, 실수, 문자, 논리 타입 포함
객체의 주소를 Heap 영역에 저장 & 해당 주소 값은 실제 값이 저장된 Stach 영역의 주소가 담긴다.
예: 배열, 클래스, 인터페이스
// 기본형
int num = 10;
// 참조형
String text = "Hello";
아래는 블로그에 적합한 형식으로 작성한 내용입니다. 각 항목에 예시와 설명을 추가하여 독자들이 쉽게 이해할 수 있도록 구성했습니다.
변수와 데이터 타입에 대한 완벽 가이드
프로그래밍에서 변수(Variable) 는 데이터를 저장하고 관리하는 기본 단위입니다. 변수를 올바르게 선언하고 사용하는 방법을 이해하는 것은 프로그래밍의 첫걸음입니다. 이번 포스트에서는 변수의 개념, 선언 방법, 값의 타입, 그리고 변수와 관련된 주요 개념들을 예제와 함께 알아보겠습니다.
변수의 선언 이유
변수를 선언하는 이유는 프로그램에서 사용할 값을 저장할 공간을 마련하기 위해서입니다. 예를 들어, 나이, 이름, 점수 등 다양한 데이터를 저장할 공간이 필요합니다.
변수의 선언 방법
변수를 선언하려면 변수의 타입과 변수 이름을 지정해야 합니다.
java
코드 복사
int age; // 정수형 변수를 선언
변수에 값 저장하기
변수에 값을 저장하려면 대입 연산자(=) 를 사용합니다.
java
코드 복사
int age = 25; // 정수형 변수에 25를 저장
System.out.println(age); // 출력: 25
2. 변수의 초기화
변수의 초기화란 변수를 선언한 후 처음으로 값을 저장하는 것을 말합니다. 변수는 초기화하지 않으면 사용할 수 없습니다. 특히, 지역 변수(Local Variable) 는 값을 초기화하지 않고 읽으려고 하면 컴파일 오류가 발생합니다.
java
코드 복사
int x; // 선언만 하고 초기화하지 않음
System.out.println(x); // 오류 발생: 초기화되지 않은 변수
java
코드 복사
int x = 10; // 변수 초기화
System.out.println(x); // 출력: 10
3. 값의 타입
프로그래밍에서 값의 타입은 크게 세 가지로 구분됩니다.
문자(char)
하나의 문자를 표현합니다.
예: 'A', 'B', '1'
숫자
정수(int, long): 예: 10, -5
실수(float, double): 예: 3.14, -2.71
논리(boolean)
참(true) 또는 거짓(false)을 표현합니다.
예: true, false
4. 변수, 상수, 리터럴
변수: 데이터를 저장하는 메모리 공간 (변할 수 있음)
상수: 한 번 값이 저장되면 변경할 수 없는 공간 (final 키워드 사용)
리터럴: 코드에 직접 작성된 값 (예: 10, "Hello")
java
코드 복사
int number = 10; // 변수에 정수 리터럴 10 저장
final double PI = 3.14; // 상수 선언 (변경 불가능)
System.out.println(number); // 출력: 10
System.out.println(PI); // 출력: 3.14
리터럴의 접두사와 접미사
접두사: 2진수(0b), 8진수(0), 16진수(0x)
접미사: L(long), F(float), D(double)
java
코드 복사
int binary = 0b1010; // 2진수
int octal = 012; // 8진수
int hex = 0xA; // 16진수
System.out.println(binary); // 출력: 10
System.out.println(octal); // 출력: 10
System.out.println(hex); // 출력: 10
5. 문자와 문자열 리터럴, 문자열 결합
문자와 문자열 리터럴
문자는 작은따옴표(' ') 로 감싸고, 문자열은 큰따옴표(" ") 로 감쌉니다.
java
코드 복사
char ch = 'A';
String str = "Hello, World!";
System.out.println(ch); // 출력: A
System.out.println(str); // 출력: Hello, World!
문자열 결합
문자열은 + 연산자를 사용하여 결합할 수 있습니다.
java
코드 복사
String name = "John";
int age = 25;
System.out.println(name + "의 나이는 " + age + "입니다."); // 출력: John의 나이는 25입니다.
6. 두 변수의 값 교환하기
변수 간 값을 교환하려면 임시 변수를 사용합니다.
java
코드 복사
int a = 5;
int b = 10;
// 임시 변수 temp 사용
int temp = a;
a = b;
b = temp;
System.out.println("a: " + a); // 출력: a: 10
System.out.println("b: " + b); // 출력: b: 5
7. 기본형과 참조형
기본형 (Primitive Type)
데이터를 직접 저장
정수, 실수, 문자, 논리 타입 포함
참조형 (Reference Type)
객체의 주소를 저장
예: 배열, 클래스, 인터페이스
java
코드 복사
// 기본형
int num = 10;
// 참조형
String text = "Hello";
자바의 기본형은 다음과 같습니다.

int number = 2147483647; // int의 최대값
long bigNumber = 9223372036854775807L; // long의 최대값
System.out.println(number);
System.out.println(bigNumber);