-
day15 - JAVA (배열, 다차원 배열, 향상된 for문, 가변 배열)KIC/JAVA 2021. 7. 14. 12:48반응형
[배열]
-> 같은 타입의 데이터를 연속된 공간에 저장하는 자료구조
-> 중복된 변수 선언이 줄어 용이
-> 반복문을 이용해 요소들을 쉽게 다룰 수 있다.
-> 배열 변수가 null 값을 가진 상태에서 항목에 접근 불가
-> 변수[인덱스] 로 접근 불가능
-> NullPointerException 발생
[배열의 길이]
-> 배열에 저장할 수 있는 전체 항목 수
-> 배열 변수.length; 로 구할 수 있음
[다차원 배열]
[향상된 for문]
-> 배열 및 컬렉션의 항목 요소를 활용해 순차적으로 처리하는 for문
-> 인덱스를 이용하지 않고 바로 항목 요소를 반복한다.
--ex
[배열 예시]
package javaPro.java_array; //2차원 배열보다 가로, 세로가 1씩 더 큰 배열 result를 생성하여, 마지막 행과 열에 합계를 저장하는 프로그램을 구현 public class arrayEx15 { public static void main(String[] args) { int[][] score = { {90, 80, 70}, {95, 85, 75}, {70, 80, 75}, {75, 70, 85}, {70, 75, 80} }; int [][] result = new int[score.length+1][score[0].length + 1];// score.length는 인덱스라 + 1을 해준 것 for (int i = 0; i < score.length; i++) { for (int j = 0; j < score[i].length; j++) { result[i][j] = score[i][j]; // 일반 열 값 넣기 result[i][score[i].length] += score[i][j];//행 result[score.length][j] += score[i][j];// 열 result[score.length][score[i].length] += score[i][j];//전체 } } for (int i = 0; i < result.length; i++) { for (int j = 0; j < result[i].length; j++) { System.out.printf("%5d", result[i][j]); } System.out.println(); } } }
[가변 배열]
package javaPro.java_array; //가변 배열 : 다차원 배열에서만 가능하다. // 첫번째 위치는 갯갯 지정을 해야 한다. public class arrayEx09 { public static void main(String[] args) { /* int arr[][] = new int[3][]; arr[0] = new int[] {10, 20}; arr[1] = new int[] { 30, 40, 50}; arr[2] = new int[] {60}; */ int [][] arr = {{10, 20}, {30, 40, 50}, {60}}; for(int i = 0; i<arr.length; i++ ){ for(int j = 0; j< arr[i].length; j++){ System.out.print("arr[" + i + "][" + j + "] = "+ arr[i][j] + "\t"); } System.out.println(); } } }
300x250'KIC > JAVA' 카테고리의 다른 글
day18_1- JAVA (자바 ,static 메서드, 인스턴스메서드, 메서드 오버로딩, 생성자, this) (0) 2021.07.15 day17- JAVA (자바 ,객체지향언어, 변수, 클래스변수, 인스턴스변수, 메서드, 매개 변수) (0) 2021.07.15 day16 - JAVA (자바 예제) (0) 2021.07.14 day14 - JAVA (반복문, break, continue, if문, SWITCH 문) (0) 2021.07.14 day13 - JAVA (자바 개요, 환경 설정, 식별자, 자료형, 연산자) (0) 2021.07.14