[JAVA] 배열 Array

2020. 10. 9. 02:32·Computer Science/Programming Language

배열(Array)

- 인덱스와 인덱스에 대응하는 데이터들로 이루어진 자료구조로, 배열을 이용하면 한번에 많은 메모리 공간 할당이 가능

- 반복문을 이용하여 처리하기 용이하고 index는 0부터 시작

- 자바에서 '객체'로 관리

 

배열에 대한 레퍼런스 변수 arr 선언

int arr[];

arr라는 int형(정수형) 배열을 참조하기 위한 공간 생성

 

배열 객체 생성 : n개짜리 정수형 배열의 공간이 할당됨 

(1) 값 목록으로 배열 생성

int arr[]={1,3,5,7,9};
String[] names = {"KBS", "SBS", "MBC"};

 

(2) new 연산자로 배열 생성

int arr[] = new int[n];
//type 변수[] = new type [number]

 

 

값의 목록을 가지고 있지 않지만, 나중에 값들을 저장할 수 있도록 배열을 만들고 싶을 때 new 연산자로 배열 객체 생성

new연산자로 배열을 처음 생성할 경우, 배열은 자동적으로 기본값으로 초기화 됨

- int형 배열의 경우 0으로 초기화

-String 배열의 경우, null값으로 초기화

 

※ NullPointerException

배열 변수가 null값을 가진 상태에서 배열[index]로 값을 읽거나 저장하게 되면 "NullPointerException" error가 발생함

-> 배열 변수는 배열을 생성하고 참조하는 상태에서 값을 저장하거나 읽어야 함

 

배열 길이 : 배열에 저장할 수 있는 전체 항목 수 

- length 필드

배열변수.length;

length 필드는 읽기전용 필드이기 때문에 값을 바꿀 수 없음

 length필드는 배열 객체 안에 포함되어있음 (아래 사진 참고) 

 

 

배열 복사

bskwak.tistory.com/166

 

[JAVA] 배열 복사 ( System.arraycopy() 메소드 )

배열 복사 1. for문 사용 int[] oldArr = {1,2,3} int[] newArr = new int[5]; for(int i=0;i 위의 경우, 1,2,3은 그대로 복사하고 4번째 5번째 항목의 경우 int형 배열의 초기값인 0이 된다. 2. System.arraycopy..

bskwak.tistory.com

 

저작자표시 비영리 변경금지 (새창열림)

'Computer Science > Programming Language' 카테고리의 다른 글

[JAVA] eclipse에서 프로그램을 실행할 때 매개값을 주고 실행하려면?  (0) 2020.10.09
[JAVA] main()메소드의 매개값 String[]args란 ?  (0) 2020.10.09
[JAVA] HashSet  (0) 2020.09.18
[C] C Language Overview  (0) 2020.08.25
[JAVA] 어떤 숫자를 자릿수별로 배열에 저장하는 방법  (0) 2020.08.07
'Computer Science/Programming Language' 카테고리의 다른 글
  • [JAVA] eclipse에서 프로그램을 실행할 때 매개값을 주고 실행하려면?
  • [JAVA] main()메소드의 매개값 String[]args란 ?
  • [JAVA] HashSet
  • [C] C Language Overview
BS Kwak
BS Kwak
  • BS Kwak
    Slow but steady wins the race
    BS Kwak
  • 전체
    오늘
    어제
    • 카테고리 (161)
      • Project (2)
      • Next.js (3)
      • HTML+CSS+JS (17)
      • Computer Science (139)
        • Programming Language (52)
        • 자료구조와 알고리즘 (75)
        • Digital circuit (3)
        • 기타 error (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    leetcode
    티스토리챌린지
    런타임 에러
    c++error
    오블완
    LNK2001
    해시
    mysql error
    cmd error
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
BS Kwak
[JAVA] 배열 Array
상단으로

티스토리툴바