[스터디]Java의 정석 7일차

Kristopher·2022년 1월 2일
0

Java 스터디

목록 보기
7/31

(CH5) 2. String 배열 ~ 3.4 다차원 배열의 활용

String 배열

앞의 배열에서는 타입으로 int를 주로 다루었지만 String으로 타입을 다루게 되면 이를 String 배열이라고 부른다. 다만 String 타입은 참조변수이기 때문에 리터럴 값이 아니라 값의 주소를 가르키게 된다. 그렇기에 초기값을 설정하지 않으면 null값을 가지게 된다.

String[] variable = new String[length]; //length만큼의 길이를 가지는 String 배열 생성
String[] variable = new String[] {"A","B","C"}; // 초기값으로 A,B,C 사용

배열을 생성할 때 char 타입으로 배열을 생성할 수도 있다. 하지만 String 클래스가 char 배열에 기능을 추가하여 만든것이기에 String을 쓰는 것이 더 간편하다. String 클래스의 주의 기능은 아래와 같다.

드라마 제목주연 배우
char charAt(int index)문자열에서 해당 index에 있는 문자 반환
int length()문자열의 길이를 반환
String substring(int from, int to)문자열에서 from부터 to까지 있는 문자열 반환
boolean equals(Object obj)문자열의 내용이 obj와 같은지 확인하여 boolean 타입으로 반환
char[] toCharArray()문자열을 문자배열(char[])로 변환해서 반환

커맨드 라인을 통해 입력 받기

커맨드 라인을 통해 클래스를 실행시키고 싶다면 IDE상에서 작성한 java파일을 컴파일 시켜 class형식으로 만든 뒤, 해당 파일을 실행시키면서 매개변수를 전달해야 한다.

// compile 시키기 위한 코드. 파일이 존재하는 위치로 이동
javac 파일명.java // 실행 후 class 파일 생성 확인
java 파일명 arg1 arg2 arg3 // 띄어쓰기로 arg 구분

다차원 배열

지금까지 다룬 배열을 1차원 배열이었다. 2차원 이상의 배열을 다차원 배열이라고 부르며 수학에서 행렬의 개념, python에서 DataFrame등의 형태가 이에 해당한다.

//2차원 배열 선언 방법
int[][] variable = new int[4][3] // 4행 3열 테이블 형태의 2차원 배열
// 배열의 크기를 선언하지 않고 초기값을 입력하면 자동으로 크기가 맞춰진다
int[][] arr = {
	{1,2,3},
    {4,5,6}
}

가변배열

가변배열은 2차원 이상의 배열인 다차원 배열 중 특이한 형태를 가진 형태이다. 위의 다차원 배열 예시에서는 각 행마다 가지는 열의 개수가 동일하다. 하지만 각 행마다 다른 열의 개수를 가지는 경우에은 어떻게 해야할까? 이 경우 다차원 배열을 선언함으로 해결할 수 있다.

int[][] variable = new int[5][];
variable[0] = new int[4]; // 1행에는 4개의 배열을 할당
variable[1] = new int[3]; // 2행에는 3개의 배열을 할당
variable[2] = new int[2]; // 3행에는 2개의 배열을 할당
variable[3] = new int[4]; // 4행에는 4개의 배열을 할당
variable[4] = new int[3]; // 5행에는 3개의 배열을 할당

Reference

Java의 정석
남궁성의 정석코딩

profile
개발자 지망생입니다.

1개의 댓글

comment-user-thumbnail
2022년 1월 8일

좋은 내용 감사합니다 :)

답글 달기