[자바의 정석] Chapter 02 변수(1)

hovi·2022년 7월 17일
0
post-thumbnail

📖 변수(variable)

📌 변수(variable)란?

단 하나의 값을 저장할 수 있는 메모리상의 공간

하나의 변수에 단 하나의 값을 저장할 수 있으므로 새로운 값이 저장되면 기존의 값은 사라진다.

📌 변수 선언과 초기화

✍ 변수 선언 방법

int age;

변수타입(int) : 변수에 어떤 타입이 저장될 것인지 정해주는 것

변수(variable)의 타입?
값은 문자와 숫자로 나뉘며 숫자는 정수와 실수로 나뉜다.

  • 자료형(data type) : 값(data)의 종류(type)에 따라 값이 저장될 공간의 크기와 저장형식을 정의한 것이다. 이는 크게 기본형참조형으로 나뉜다.
    • 기본형(primitive type)
      논리형(boolean, 1byte), 문자형(char, 2byte), 정수형(byte(1byte), short(2byte), int(4byte), long(8byte)), 실수형(float, double)으로 계산을 위한 실제 값을 저장한다. 모두 8개이다.
    • 참조형(reference type)
      객체의 주소를 저장한다. 8개의 기본형을 제외한 나머지 타입을 말한다.
      참조변수는 클래스 이름을 타입으로 하기 때문에 클래스이름 변수이름;으로 입력해야 한다.
Data today = new Date();	//Date객체를 생성해서, 그 주소를 today로 저장

변수이름(age) : 메모리 공간에 이름을 붙여주는 것

변수가 선언되면 메모리의 빈 공간에 "변수타입"에 알맞는 크기의 저장공간이 확보되고 이렇게 생긴 저장공간을 "변수이름"을 통해 사용이 가능하다.

✍ 변수 초기화 방법

int age = 25;

변수를 선언한 이후엔 반드시 '초기화(initialization)'를 해주어야 한다. 메모리는 여러 프로그램이 공유하는 자원이므로 변수에 쓰레기값이 남아있을 수 있기 때문이다.

✍ 여러 변수를 한줄에 선언과 초기화

int a, b;
int x = 0, y = 0;

변수타입이 같은 경우 콤마(,)를 사용해 한꺼번에 선언하고 초기화할 수 있다.

✍ 변수의 선언과 초기화 예제

package test_1;

public class HelloWorld {

	public static void main(String[] args) {
		int year = 0;	//변수 year을 0으로 초기화
		int age = 14;	//변수 age를 14로 초기화
		
	System.out.println(year);	//변수 year 출력
	System.out.println(age);	//변수 age 출력
	
	year = age + 2000;	//변수 year를 age+2000으로 초기화
	age = age + 1;	//변수 age를 age + 1 값으로 초기화
	
	System.out.println(year);
	System.out.println(age);
	}

}

💻 결과

0
14
2014
15

📌 두 변수의 값 교환하기

x, y 두 변수의 값을 교환하려면 변수 x에 y의 값을 저장하고 y에 x의 값을 저장하면 될 것같지만 그렇게 한다면 두 변수의 값이 같아져버린다.

따라서 별도의 x값을 임시로 저장할 변수(tmp)가 필요하다.

✍ 두 변수의 값 교환 예제

package test_1;

public class HelloWorld {

	public static void main(String[] args) {
		int x = 10, y = 20; 	//x와 y값 선언 및 초기화
		int tmp = 0;	//tmp 선언 및 초기화
		
	System.out.println("x:" + x + "y:" + y);
	
	tmp = x;	//tmp에 x값을 저장
	x = y;	//x값에 y값 20을 저장
	y = tmp;	//y값에 x를 임시저장한 tmp값을 저장
	
	System.out.println("x:" + x + "y:" + y);
	}

}

💻 결과

x:10y:20
x:20y:10

📌 변수의 명명규칙

프로그래밍에서 사용하는 모든 이름들을 식별자(identifier)라고 부른다. 식별자는 같은 영역 내에서 구분되어야 하며 다음 규칙을 따라야한다.

  • 대소문자가 구분되며 길이에 제한이 없다.(True=/=true)
  • 예약어를 사용해서는 안된다.(true는 예약어므로 사용 금지)
  • 숫자로 시작해서는 안된다.(top10⭕ 10top❌)
  • 특수문자는 '_'와 '💲'만을 허용한다.(💲harp⭕ S#harp❌)

다음은 필수는 아니지만 프로그래머에게 권장하는 규칙이다.

  • 클래스의 첫 글자는 항상 대문자로 한다.
    - 변수와 메서드의 이름의 첫글자는 항상 소문자로 한다.
  • 여러 단어로 이루어진 이름은 단어의 첫 글자를 대문자로 한다.
  • 상수의 이름은 모두 대문자로 한다. 여러 단어로 이루어진 경우 '_'로 구분한다.
  • 변수의 이름은 의미있는 것으로 지정한다.
profile
풀스택 예비 개발자

0개의 댓글