자료형[] 변수명 = new 자료형[길이]
or 자료형 변수명[] = new 자료형[길이]
자료형[] 변수명 = {값1, 값2, 값3, ...}
변수명.length
char[] charArr = {'A', 'B', 'C'};
int[] intArr = {1, 3};
boolean[] boolArr1 = new boolean[3]; // 선언 및 생성 -> {false, false, false}가 생성됨
boolean[] boolArr2 = new boolean[3] {false, true, true}; // 배열 생성과 초기화 동시에 가능
int intArrLen = intArr.length; // 2
int booleanArr2Len = boolArr2.length; // 3
자료형[][] 변수명
자료형[][][] 변수명
// 2차원 배열
boolean[][] dblBoolAry = new boolean[3][3];
int[][] dblIntAry = new int[][] {
// ⭐️ 요소 배열의 크기가 다를 수 있음
{1, 2, 3}, // dblIntAry[0]
{4, 5}, // dblIntAry[1]
{6, 7, 8, 9}, // dblIntAry[2]
};
// 3차원 배열
char[][][] trpChrAry = {
{{'자', '축'}, {'인', '묘'}}, // trpChrAry[0]
{{'진', '사'}, {'오', '미'}}, // trpChrAry[1]
{{'신', '유'}, {'술', '해'}}, // trpChrAry[2]
};
int int1 = dblIntAry[0][1]; // 2
int int2 = dblIntAry[2][3]; // 9
char chr2 = trpChrAry[2][0][1]; // '유'
int int1 = 1;
int int2 = 2;
int2 = int1;
int2 = 3;
// int1 = 1, int2 = 3
int[] intAry1 = {1, 2, 3};
int[] intAry2 = {4, 5};
intAry2 = intAry1; // 두 변수가 같은 메모리를 가리키게 됨
intAry1[1] = 100;
// intAry1 = {1, 100, 3}, boolAry2 = {1, 100, 3}
String str1 = "안녕";
string str2 = "헬로";
str2 = str1;
str1 = "니하오";
// str1 = "니하오", str2 = "안녕";
final int[] NUMBERS = {1, 2, 3, 4, 5};
NUMBERS = new int[] {2, 3, 4, 5, 6}; ❌
NUMBERS[0] = 50;
// NUMBERS = {50, 2, 3, 4, 5}
String
기능join
정적 메서드 : 문자열(정확히는 CharSequence)의 배열을 하나로 이어붙임String[] strs = {"아아", "아삿추", "아바라"};
// 첫번째 인자를 각 사이에 삽입
String join1 = String.join(", ", strs); // 아아, 아샷추, 아바라
String join1 = String.join("-", strs); // 아아-아샷추-아바라
String join1 = String.join("", strs); // 아아아샷추아바라
String join1 = String.join(" 그리고 ", strs); // 아아 그리고 아샷추 그리고 아바라
var
연산자로 변수 선언 - 타입 명시 Xvar intNum = 1;
var doubleNum = 3.14;
var charLet = 'A';
var StringWord = "안녕하세요";
// 사용 불가 : 컴파일러가 타입을 추론할 수 없는 상황
var notInit; // 초기화가 안 됨 ❌
var nullVar = null; // null로 초기화 ❌
intNum = 1.23; ❌
StringWord = 123; ❌
for (var i = 0; i < 10; i++) {
System.out.println(i);
}
// 배열의 경우 초기화시에 명시
var chars = new char[] {'A', 'B', 'C', 'D', 'E'};
// var chars2 = {'A', 'B', 'C', 'D', 'E'}; // ⚠️ 불가
for (var c : chars) {
System.out.println(c);
}
출처 - 인프런 '제대로 파는 자바' 강의