데이터 타입 분류

기본 타입

! 200

[기본 타입 변수]
int age = 25; 
double price = 100.5; 
let age = 25
let age1 = age

console.log(age)

참조 타입

[참조 타입 변수]
String name = "신용권";
String hobby = "독서";

기본 변수 vs 참조 변수

Pasted image 20221226171808.png

메모리 사용 영역

Java 메모리 구조

! 600

메소드(Method) 영역

힙(Heap) 영역

JVM 스택(Stack) 영역

JVM 스택 작동 방법

[1]
char v1 = 'A';

[2]
if(v1 == 'A'){
	int v2 = 100;
	double v3 = 3.14;
}

[3]
boolean v4 = true

참조 타입 변수의 ==, !== 연산

refVar == refVar2 // 결과 : false
refVar1 !== refVar2 //결과 true
refVar2 == refVar3 // 결과 : true
refVar2 !== refVar3

null과 NullPointerException

String refVar1 = "자바";
String refVar2 = null;

! 400

int [] intArray = null;
intArray[0] = 10; //NullPointException

String 타입

String name;   // String 타입 변수 name 선언
name = "홍길동"; //name 변수에 문자열 대입
String hobby = "여행"  //String 타입 변수 hobby를 선언하고 문자열 대입

문자열 비교

String name1 = "홍길동"
String name2 = "홍길동";

Pasted image 20221227150901.png

String name1 = new String("홍길동");
String name2 = new String("홍길동");

Pasted image 20221227151338.png

boolean result = str1.equals(str2); //문자열이 같은지 검사(대소문자 구분)

boolean result != str1.equals(str2); //문자열이 다른지 검사

문자 추출

String subject = "자바 프로그래밍";
char charValue = subject.chatAt(3);

...

문자열에 많은 함수들은 추후에 작성하겠다.

Array 타입

배열은 같은 타입의 값만 관리한다
배열의 길이는 늘리거나 줄일 수 없다

배열 변수 선언

[1]
타입 [] 변수;

[2]
타입 변수[];
[1]
int[] intArray;
double[] doubleArray;
String[] strArray;

[2]
int intArray[];
double doubleArray[];
String strArray[];
타입[] 변수 = null;

값 목록으로 배열 생성

타입[] 변수 = [ 값0, 값1, 값2, 값3, ...]

Pasted image 20221227160927.png

String[] season = [ "Spring", "Summer", "Fall", "Winter" ];
타입[] 변수;
변수 = [ "값0", "값1", ... ]; //컴파일 에러
String[] names = null;
names = new String[] ["신용권", "홍길동", "김자바"];
// 메소드 선언
void printItem(int[] scores){ ... }

// 잘못된 메소드 호출
printItem( { 95, 85, 90} );

// 올바른 메소드 호출
printItem( new int[](95, 85, 90) );

new 연산자로 배열 생성

타입[] 변수 = new 타입[길이];
타입[] 변수 = null;
변수 = new 타입[길이];

다차원 배열

변수[1차원 인덱스][2차원 인덱스][3차원 인덱스]

new 연산자로 다차원 배열 생성

타입[][] 변수 = new 타입[1차원수][2차원수];

Pasted image 20221227165026.png

객체를 참조하는 배열

String[] strArray = new String[3];
strArray[0] = "Java";
strArray[1] = "C++";
strArray[2] = "C#";

Pasted image 20221227165601.png


#Java