변하는것(변수)과 변하지 않는것(상수).
- 저장공간의 선언
Int number ; // Int -> 저장공간 타입. Integer. 정수
// number -> 변수명 설정
// number라는 이름의 int(숫자,정수)타입의 저장공간을 선언
String name; // name 이라는 이름의 String(문자열)타입의 저장공간을 선언
- 값의 저장(할당)
int number = 10; // 1. 선언과 동시에 값을 할당하는 것.
number = 11; // 2. 선언 이후에 값을 할당 "덮어쓰기"
- 변수 : 변하는 저장공간 (접시) -> 이것도 담고 저것도 담고 할 수 있음
- 상수 : 변하지 않는 저장공간 (냄비 -> 냄비에 찌개를 담아놓고 식사를 다할때까지 다른걸 담지 않는다 ex : pi->3.141592...)
final int number = 10; // 1. 상수로 선언 (데이터 타입 앞에 final이 붙으면 상수선언)
변수의 두가지 종류
- 기본형 : 숫자, 문자, boolean ...
- 참조형 : 뭔가 복잡한 ... 어딘가에 별도로 저장한 ...
기본형 변수
- 논리형 변수 : boolean
True / False
boolean flag = true; // 1. 논리형 변수 boolelan으로 flag를 true로 선언
- 문자형 변수 : char
'A', '1'와 같은 문자 하나만 저장가능
char alphabet = 'A'; // 문자 하나를 저장
- 정수형 변수 : byte, short, int, long
byte : -128~127
short : 2byte. -32,768~32,7677
int : 4byte. -21억~21억
long : 8byte. 9백경 정도. 매우 큰수. 숫자 끝에 L을 붙여서 long형 값을 선언.
- 실수형 변수 : float, double
0.123, 0.9999와 같은 소수점 실수값을 지정한다.
float floatNumber = 0.123f // 접미사 f를 붙여서 float형 값을 선언
참조형 변수
- 문자열 변수 : String
"Apple", "텍스트"와 같은 문장을 저장한다. 하나 이상의 '문자형'이 저장된 형태.
String message = "Hello World"; // 문자열을 저장한다.
- 그 외 : Object, Array, List ...
- 객체, 배열, 리스트와 같은 단일 저장공간에 담을 수 없는 값을 저장.
List<int> alphabet = [0,1,2,3]; // 기본형 변수를 리스트에 여러개 저장.
- 래퍼 클래스 변수
래퍼 클래스(Wrapper Class)라는 말 그대로 '기본형(boolean, int, byte, char, float...) 변수를 클래스로 한번 랩핑(감싸는) 변수
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
// 우리의 playground!
// 변수나 메서드명을 만들때 byteNumber처럼 가운데에 대문자를 끼우는 '카멜케이스'방식으로 작성
// !기본형!
// (1) boolean
// 변수를 선언해보자 => 타입 이름 = 값;
boolean flag = true;
boolean apple = false;
System.out.println(flag);
System.out.println(apple);
// (2) 문자형(char)
char alpahbet = 'A'; // ""를 사용하면 '문자열'로 인식한다! 문자형(char)은 ''로 감싼다.
System.out.println(alpahbet);
// (3) 정수형(byte, short, int, long)
byte byteNumber = 127;
short shortNumber = 32767;
int intNumber = 2147483647;
long longNumber = 2147483647L;
System.out.println(byteNumber); // -128 ~ 127(1byte = 8bit = 2^8 = 256)
System.out.println(shortNumber); // -32,7768 ~ 32,7767
System.out.println(intNumber);
System.out.println(longNumber);
// (3-2) 실수형
// float(4byte), double(8byte)
float floatNumber = 0.123F;
double doubleNumber = 0.1231231232;
// 위에서 처럼 변수를 할당하고 밑에서처럼 할당된 변수를 쓸수있다. = 참조한다.
System.out.println(floatNumber);
System.out.println(doubleNumber);
// !참조형!
// (1) 문자열 변수
String helloWorld = "Hello world!";
System.out.println(helloWorld);
// (2) 배열
int[] a = {1, 2, 3};
System.out.println(a); // 참조형 데이터는 주소값에 저장되기때문에 주소값이 출력된 것
System.out.println(Arrays. toString(a)); // 정상적으로 [1, 2, 3]이 출력
// (3) 래퍼 클래스(Wrapper Class) 변수
int number = 21;
Integer num = number;// Integer라는 클래스를 선언. 변수명 num 임의설정. boxing.
System.out.println(num.intValue()); // unboxing
}
}
'Backend > Java' 카테고리의 다른 글
| Java 문법 2주차 2-3,4,5 대입연산자~ 연산자 우선순위 (1) | 2023.11.21 |
|---|---|
| Java 문법 2주차 2-1,2 사칙연산~논리연산자 (0) | 2023.11.21 |
| Java 1주차 문법 1-7,8,9 아스키코드, 변수타입(심화), 형변환 (0) | 2023.11.21 |
| Java 문법 1주차 1-3,4 (0) | 2023.11.21 |
| Java 문법 1주차-1,2 (1) | 2023.11.21 |