-- 그룹 데이터 자료 저장구조
-- 다차원 배열
>> 1차원
>> 2차원
>> n차원
-- 기본형, 객체형 지원타입
-- 배열요소 인덱스번호 시작은 0 ~ 배열크기-1 범위
-- 배열명 : 참조변수
-- 배열명.length 변수 : 배열크기 저장변수
-- 예외
>> 프로그램 수행중에서 발생하는 문제(오류)
>> ArrayIndexOutOfBoundsException
>> 잘못된 배열요소 접근시에 발생하는 문제(예외)
-- 주의사항 : {}; (반드시 ; 세미콜론을 표기해야함)
1. [modifiers] 타입[] 배열명 = new 타입[]{초기값1, 초기값x};
-- 기본형
>> 정수형 : 0
>> 실수형 : 0.0
>> 논리형 : false
>> 단일문자형 : 공백문자 '\u0000'
-- 참조형
>> 모든클래스(인터페이스), 배열
>> null
>> null의미 : 어떠한 객체도 참조하지않고있음
-- 행과 열의 구조를 갖는 배열
-- 행마다 열의크기를 동일하게 생성
-- 행마다 열의크기를 다르게 생성
-- 2차원배열명.length : 2차원배열의 행크기 저장된 변수
-- 2차원배열명[행번호].length : 해당행의 열크기 저장된 변수
-- 행번호 시작 : 0
-- 열번호 시작 : 0
-- 생성
2차원배열명 = new 타입[행크기][열크기];
-- 초기화(배열요소 사용)
2차원배열명[행번호][열번호] = 값;
-- 초기화(배열요소 사용)
2차원배열명[행번호][열번호] = 값;
[modifiers] 타입[][] 2차원배열명 = {
{value1, value2, value3},
{value1},
{value1, value2, value3, valueX}
}
선언
[modifiers] 타입[][] 2차원배열명;
생성
// 행크기만 지정, 열크기는 각 행마다 각각 다르게 지정생성
2차원배열명 = new 타입[행크기만지정][];
2차원배열명[행번호] = new 타입[해당행의열크기지정];
배열요소 사용
2차원배열명[행번호][열번호] = 값;
-- default package 컴파일방법
dos> javac [options] *.java
dos> javac HelloWorld.java
dos> javac -encoding utf-8 HelloWorld.java
=> 클래스이름.class (byte code)
-- package 컴파일방법
dos> javac -d output-dir-name *.java
-- 자바실행 : .class 바이트코드의 확장자를 지정해서는 안됨(. 패키지구분자)
-- default package 실행방법
dos> java [options] main()메서드가있는실행클래스명
dos> java HelloWorld
-- package 실행방법
dos> java [options] 패키지명.패키지명.main()메서드가있는실행클래스명
dos> java HelloWorld
-- main() 메서드 아규먼트 전달 실행방법
dos> java [options] main()메서드가있는실행클래스명 아규먼트데이터1 "아규먼트 데이터x"
=> jvm이 실행시에 클래스명뒤에 공백을 구분자로해서 해당크기만큼의 String 타입의 배열객체를 생성해서 순서대로 배열요소 값을 할당
-- 자바의 기본형 타입을 객체형타입으로 변환하는 클래스
-- 문자열형식의 숫자데이터를 int 타입으로 변환 예시
>> int teamLenth = Integer.parseInt(args[0]);