1. 변수란?
- 변수(variable)는 데이터를 저장하고 참조하기 위한 이름이 붙은 메모리 공간
- 변수는 자료형(type)과 함께 선언
- 변수 선언 방법
// 우선 변수 선언 후 값 할당
int myNumber;
myNumber = 10;
System.out.println(myNumber); // 출력: 10
// 변수 선언과 동시에 초기값 할당
int myNumber = 10;
System.out.println(myNumber); // 출력: 10
- 변수 값 변경
package variable;
public class Var {
public static void main(String[] args) {
int a;
a = 10;
System.out.println(a); // 10 출력
a = 50;
System.out.println(a); // 50 출력
}
}
==> 이름 그대로 변수이므로 초기값을 지정해도 언제든지 값을 변경할 수 있다.
- 변수 초기화
- 변수에 처음으로 값을 저장하는 것을 변수 초기화라 한다.
- 변수가 초기화되지 않으면 컴파일 에러가 발생한다.
2. 변수 타입
package variable;
public class Var {
public static void main(String[] args) {
int a = 100; // 정수
double b = 10.5; // 실수
boolean c = true; // true, false 입력 가능
char d = 'A'; // 문자 하나
String e = "Hello Java"; // 문자열, 문자열을 다루기 위한 특별한 타입
System.out.println(a); // 100
System.out.println(b); // 10.5
System.out.println(c); // true
System.out.println(d); // A
}
}
==> 문자 하나는 작은 따옴표로 문자열은 큰따옴표로 관리한다.
==> 타입에 맞지 않는 값을 넣었을 경우 컴파일 에러가 발생한다.
- 리터럴
int a = 100; //정수 리터럴
double b = 10.5; //실수 리터럴
boolean c = true; //불리언 리터럴
char d = 'A'; //문자 하나 리터럴
String e = "Hello Java"; //문자열 리터럴
==> 고정된 값을 의미한다. 변수의 값은 변할 수 있지만 리터럴은 입력한 고정된 값.
- 숫자 타입
package variable;
public class Var {
public static void main(String[] args) {
byte b = 127; //-128 ~ 127
short s = 32767; // -32,768 ~ 32,767
int i = 2147483647; //-2,147,483,648 ~ 2,147,483,647 (약 20억)
long l = 9223372036854775807L;
//-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
//실수
float f = 10.0f;
double d = 10.0;
}
}
==> 메모리에 따라 숫자 표현할 수 있는 정도 다르다.
- 정수형
- byte : -128 ~ 127 (1byte, 2⁸)
- short : -32,768 ~ 32,767 (2byte, 2¹⁶)
- int : -2,147,483,648 ~ 2,147,483,647 (약 20억) (4byte, 2³²)
- long : -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 (8byte, 2⁶⁴)
- 실수형
- float : 대략 -3.4E38 ~ 3.4E38, 7자리 정밀도 (4byte, 2³²)
- double : 대략 -1.7E308 ~ 1.7E308, 15자리 정밀도 (8byte, 2⁶⁴)
- 기타
- boolean : true , false (1byte)
- char : 문자 하나(2byte)
- String : 문자열을 표현한다. 메모리 사용량은 문자 길이에 따라 동적으로 달라진다. (특별한 타입이다. 자 세한 내용은 뒤에서 학습한다)
3. 변수 명명 규칙
- Rule
- 변수 이름은 숫자로 시작할 수 없다. (예: 1num, 1st)
==> 그러나 숫자를 이름에 포함하는 것은 가능하다 (예: myVar1, num1) - 이름에는 공백이 들어갈 수 없다.
- 자바의 예약어를 변수 이름으로 사용할 수 없다. (예: int, class, public)
- 변수 이름에는 영문자( a-z, A-Z), 숫자( 0-9), 달러 기호( $) 또는 밑줄( _)만 사용할 수 있다.
- 변수 이름은 숫자로 시작할 수 없다. (예: 1num, 1st)
'Java Dev. > Java 기본 정리' 카테고리의 다른 글
Java - 개발 환경 설정 (0) | 2024.04.08 |
---|