[JAVA] 배열

보람·2023년 1월 26일
0

JAVA

목록 보기
8/24
post-thumbnail

배열

(1) 배열이란?

  • 변수를 그룹으로 묶은 형태의 한 종류, 사물함 같은 형태
  • 하나의 배열안에는 같은 종류(데이터 형)의 값들만 저장됨

(2) 배열을 만드는 방법

  • 1차원 배열의 선언
	데이터형[] 배열이름;  //메모리확보
  • 1차원 배열의 생성 : 변수를 저장할 수 있는 사물함 생성
	배열이름 = new 데이터형[크기];
  • 1차원 배열 생성의 예 : 3개의 int형 변수를 저장할 수 있는 배열 생성
	int[] grade;
	grade = new int[3];
  • 1차원 배열의 선언과 크기 지정에 대한 일괄처리
	데이터형[] 배열이름 = new 데이터형[크기];
    
	int[] grade = new int[3];

(3) 배열의 모양

  • 생성된 배열은 사물함과 같이 각각의 칸에 값들이 저장
  • 각각의 칸은 0부터 일련번호가 저장된다.(일련번호 = 배열의 인덱스)

(4) 배열에 값을 저장하기

  • 배열은 값을 저장할 수 있는 공간 -> 공간 o, 값 x
  • 값 대입 x -> 숫자형 = 0, boolean형 = false 가 자동대입
  • 배열에 값 저장하는 법 : 인덱스 번호를 사용하여 각각의 칸에 직접 값을 대입
	배열이름[인덱스] = 값;
  • 3과목 성적을 배열로 표현
	int[] grade = new int[3];
	grade[0] = 75;
	grade[1] = 82;
	grade[2] = 91;

(5) 배열의 크기 설정과 값 할당에 대한 일괄처리

  • 배열의 생성과 값의 할당 일괄처리 하는 법 : 배열의 크기를 지정하면서 괄호"{..}"안에 배열에 포함될 각 항목들을 콤마(,)로 나열
  • 이때, 배열을 별도로 지정하지 않으며, "new 데이터형[]"부분은 생략가능하다.
	데이터형[] 배열이름 = new 데이터형[]{75, 82, 91};
		혹은
	데이터형[] 배열이름 = {75, 82, 91};

(6) 배열값 사용하기

  • 연산이나 출력을 위해서는 배열에 부여된 인덱스값을 사용한다.
	System.out.println( grade[0] );
   	System.out.println( grade[1] );
	System.out.println( grade[2] );

(7) 배열과 반복문

  • 배열의 특성
    • 0 ~ (배열의 크기-1) 만큼의 인덱스 값을 순차적으로 갖는다.
    • 3과목 배열의 인덱스 : 0~2 (전체 길이 3보다 작음)
	int[] grade = new int[]{100,100,90};
	                
		           ↓grade배열의 전체 길이 (배열이 늘어나면 늘려줘야함)
	for( int = i; i<3; i++ ){
		System.out.println( grade[i] );
	}

(8) 배열의 크기(길이)

  • "배열이름.length"
  • grade라는 배열을 생성한 경우 배열의 길이
    int size = grade.length;
	int[] grade = new int[]{100,100,90};
	                
		            ↓가변 가능하도록 하기 = grade.length로 변경하면 됨
	for( int = i; i<3 ; i++ ){
		System.out.println( grade[i] );
	}for( int = i; i<grade.length; i++ ){
		System.out.println( grade[i] );
	}

(9) 배열의 종류

  • 1차 배열

    • 1줄만 존재하는 사물함 같이 구성
    • 행에 대한 개념 x -> 열에 대한 개념만 존재
    • "배열이름.length"는 몇 칸인지 알아보는 기능이 된다.
  • 2차 배열

    • 1차 배열의 각 칸에 새로운 배열을 넣는 형태
    • 1차 배열의 각 칸은 "행" / 각 칸에 추가된 개별적인 배열이 "열"
      행렬 구성

(10) 2차원 배열의 생성방법

  • 2차원 배열의 선언
	데이터형[][] 배열이름;
  • 2차원 배열의 크기 할당
	배열이름 = new 데이터형[행][열];
  • 2차원 배열의 선언과 할당의 일괄처리
	데이터형[][] 배열이름 = new 데이터형[행][열];
	int[][] grade = new int[3][3];
  • 2차원 배열의 선언, 크기할당, 값의 대입에 대한 일괄처리
	데이터형[][] 배열이름 = new 데이터형[][]{
		{0행 0열의 값, 0행 1열의 값,..., 0행 n열의 값},
		{1행 0열의 값, 1행 1열의 값,..., 1행 n열의 값},
		...
		{n행 0열의 값, n행 1열의 값,..., n행 n열의 값},
	};
  • 2차원 배열에 대한 값의 대입 방법
    -> 행, 열에 대한 인덱스를 통하여 값을 대입한다.
	배열이름[행][열] = 값;
  • 1차배열에서 중요했던것 -> 길이 정보 (*.length)
    -> 2차 배열에서도 중요

(11) 2차원 배열이 길이!

  • "행", "열" 나눠서 생각하기
  • "행"의 길이
    -> 1차원 배열 길이 = 2차원 배열 행의 크기
		int rows = grade.length;
  • "열"의 길이
    각 행에 대해 열의 길이가 다 다를 수도 있음
    그러므로, 열의 길이는 각 행에 대해서 개별적으로 조회
		int cols = grade[].length 
profile
안녕하세요, 한보람입니다.

0개의 댓글