반응형
변수 : 데이터를 메모리에 저장하는 장소
프로그래밍(변수 포함)은
선언 > 초기화 > 호출
의 과정을 거친다고 볼 수 있다.
기본형(primitive Type) 변수
- 메모리에 변수를 통해 값을 담는 타입
1.논리형 Boolean - 참과 거짓을 저장해두는 기능(1bit사용), 비교연산을 한 결과가 Boolean값으로 나오게된다.
비교문은 boolean값을 참조하여 분기하게 된다.
boolean isStart = false; // true or false를 입력하여 조건식에서 주로 사용
2.문자형 Char, String - Char는 유니코드로 저장(2bytes 사용), 한개의 문자가 아니라면 String이라는 형식으로 저장
Char var1 = '노'; // 한 글자의 한글 or 영어
String var2 = "다양한 글자가 가능"; //여러글자의 문자열 가능
3.정수형 4개 - 소숫점이 없는 정수형은 수의 크기별로 4가지 타입이 존재. 메모리의 절약을 위해 나눈것임.
byte var3 = -128; // -128 ~ +127 (1byte)
short var4 = -32768; // -32768 ~ +32767 (2byte)
int var5 = 999999999; // -21억 ~ +21억 (4byte)
long var6 = 99999999999; // 여러숫자의 입력가능 (8byte)
4.실수형 float, double - 그래픽이나 사운드등 실수가 꼭 필요한 경우에 주로 사용. 소수점 자릿수 표현
float var7 = 0.1f; // 소수점 선언후 f를 붙여주어야한다 (32bit)
double var8 = 0.0000005; // 소수점 선언 (64bit)
참조형(Reference Type) 변수
- 메모리에 변수를 통해 값과 기능을 담는 타입
1.배열 - 순서에 맞춰 값을 담고 순서에 해당하는 값을 바로 꺼내써야 하는 목록형 데이터에 사용
String[] monster = {"슬라임", "사막뱀", "악마"};
System.out.println(monster[0]);
System.out.println(monster[1]);
System.out.println(monster[2]);
----------------------
슬라임
사막뱀
악마
int[] monsterLevel = new int[3]; // 3칸을 만든다는 의미(현재 세 칸은 비어있기때문에 지정해줘야한다)
monsterLevel[0] = 1;
monsterLevel[1] = 6;
monsterLevel[2] = 20;
System.out.println(monsterLevel[0]);
System.out.println(monsterLevel[1]);
System.out.println(monsterLevel[2]);
-------------------
1
6
20
List : 기능이 추가된 가변형 참조형 변수
List<자료형> items = new ArrayList<>(저장용량); //기본 저장용량 10
List<String> items = new ArrayList<>();
items.add("생명물약30");
items.add("마나물약30");
System.out.println(items.get(0));
System.out.println(items.get(1));
------------------
생명물약30
마나물약30
items.remove(0); // *배열과 다르게 List는 안에있는 데이터를 삭제할 수 있다.
System.out.println(items.get(0));
System.out.println(items.get(1));
---------------
마나물약30
index Error
ex)
int sample [10];
자료형 배열이름 갯수
Sample이라는 이름으로 10개의 int(integer)공간을 예약
sample[3] = 40;
Sample의 3번 자리에 숫자 40을 넣음
int x = sample[3];
Sample 3번 자리의 값(여기서 값은 40)을 꺼내어 변수 x에 저장
반응형
'Programming Language > JAVA' 카테고리의 다른 글
[Android/Java] 반복 예약 알람 (AlarmManager, Broadcast Receiver, Service) (0) | 2020.05.20 |
---|---|
배열 Array [Java] (0) | 2020.04.14 |
반복문 for / for each / while [Java] (0) | 2020.04.14 |
조건문 if, else, switch [Java] (0) | 2020.04.14 |
코딩 기본다지기 [Java] (0) | 2020.03.11 |