[Java] 변수

이병수·2023년 12월 27일
0

Java

목록 보기
2/27
post-thumbnail
post-custom-banner

변수


변수란?

variable

변수란, 값을 저장할 수 있는 메모리 공간이다.

  • 메모리의 특정 번지에 붙은 이름이며, 메모리에 어디에 저장하고 어떤 방식으로 저장할지는 JVM이 정하게 된다.


변수 선언과 초기화

int a;
double number;
char charc;
boolean isCheck;
  • 메모리 공간 속에 int라는 타입에 a라는 이름의 변수를 선언
  • 메모리 공간 속에 double이라는 타입에 number라는 이름의 변수를 선언
  • 메모리 공간 속에 char라는 타입에 charc라는 이름의 변수 선언
  • 메모리 공간 속에 boolean 타입의 isCheck라는 이름의 변수 선언
  • 아직 변수를 선언하고 초기화를 하지 않은 상태임

int a = 10;

숫자를 보관할 수 있는 데이터 저장소인 변수 a에 10이라는 값을 저장한다.

  • 변수를 선언하고, 선언한 변수에 처음으로 값을 저장하는 것을 변수 초기화라고 한다.
  • 따라서 현재, 변수를 초기화 한 것이다.

int a;

만약 초기화 되지 않은 상태로 읽게 된다면 오류가 발생하므로 주의하자. (null값)



변수 타입

  • int : 정수를 다룬다. (1, 100, 1000...)

  • double : 실수를 다룬다. (0.2, 1.5, 100.121...)

  • boolean : 불리언 타입 (true, false 값만 사용)

  • char : 문자 하나를 다룬다. ('A', '가'...)

  • String : 문자열을 다룬다. ("hello", "java"...)

기본적으로 정수에서는 int, 실수에서는 double이다.


문자와 문자열

문자(Char)

  • 문자 한개만 저장하며 따옴표를 사용해서 값을 지정한다.
  • 문자 뒤에 \0(널문자)가 없다

문자열(String)

  • 문자 여러개를 문장형태로 저장하여 쌍따옴표를 사용하여 범위 지정
  • 문장의 끝에 \0(널문자)가 함게 저장



메모리 공간 크기

  • 정수형

    • byte : -128 ~ 127 (1byte)

    • short : -32,768 ~ 32,767 (2byte)

    • int : -2,147,483,648 ~ 2,147,483,647 (약 20억) (4byte)

    • long : -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 (8byte)

      • long은 숫자 뒤에 l 또는 L을 붙여야한다.
  • 실수형

    • float : 대략 -3.4E38 ~ 3.4E38, 7자리 정밀도 (4byte)
      • 실수에서는 끝에 f를 붙여줘야한다.

    • double : : 대략 -1.7E308 ~ 1.7E308, 15자리 정밀도 (8byte)
  • 기타

    • boolean : true, false (1byte) -> 논리형
    • char : 문자 하나 (2byte) -> 문자형

참조변수

프로그래머가 직접 만들어서 사용할 수 있음, 기본형을 제외한 나머지
참조형은 어떤 값이나 형식이 저장되어 있는 주소를 값으로 가진다.

  • 기본형을 제외한 나머지를 의미한다.

  • String, Array, Object.. 등


리터럴 (Literal)

코드에서 개발자가 직접 적은 값 (100, 10.5 ..) 와 같은 고정된 값을 리터럴 이라고 한다.



래퍼 클래스 변수

래퍼 클래스(Wrapper Class)란 기본형 변수를 감싸는 클래스를 의미한다.

기본 타입래퍼 클래스
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

박싱 vs 언박싱

박싱 : 기본 타입에서 래퍼 클래스 변수로 변수를 감싸는 것
언박싱 : 래퍼 클래스 변수를 기본 타입 변수로 가져오는 것


형 변환

자동 형변환

byte(1) -> short(2) -> int(4) -> long(8) -> float(4) -> double(8)

해당 순위로 크기가 큰 단위이다.

작은 단위 -> 큰 단위로 이동할 때 자동으로 형변환이 이루어진다.

큰 단위 -> 작은 단위로 이동할 때, 형변환을 개발자가 직접 해줘야한다.


변수 명명 규칙

규칙

  • 변수 이름은 숫자로 시작할 수 없다.

    • 그러나 숫자를 이름에 포함하는 것은 가능
  • 이름에는 공백이 들어갈 수 없다.

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

  • 변수 이름에는 영문자, 숫자, 달러 기호($) 또는 밑줄(_)만 사용할 수 있다.

관례

  • 소문자로 시작하는 낙타 표기법
    • 변수 이름은 소문자로 시작하는 것이 일반적
    • 첫 번째 단어는 소문자로 시작, 그 이후로 각 단어는 대문자로 시작하는 낙타 표기법(camel case)를 사용한다.
  • 클래스는 대문자로 시작, 나머지는 소문자로 시작
    • 자바에서 클래스 이름의 첫 글자는 대문자로 시작
    • 예외적으로 상수는 대문자, 패키지는 모두 소문자로 시작한다.

참고

profile
백엔드 개발자가 되고 싶어요
post-custom-banner

0개의 댓글