배열(Array)

이현주·2023년 7월 14일
0

JAVA

목록 보기
11/12
post-thumbnail

배열(Array)

  • 여러 변수를 하나의 이름으로 관리하는 자료구조이다.
  • 배열에 저장된 모든 변수가 이름은 같지만, 인덱스가 다르다.
    3.인덱스란 배열의 모든 변수를 구분하기 위한 위치 정보이다. 0부터 1씩 증가하는 값을 가진다.
    4.기본용어
    1)배열명: 모든 변수의 대표이름
    2)인덱스: 첨자,모든 변수를 구분하는 숫자
    3)배열 요소: 배열에 속한 각 변수를 의미

배열의 선언과 생성

1.배열 선언
1)타입 [] 배열명
2)타입 배열명 []
2.배열 생성
배열명 = new 타입[생성할 변수의 갯수]

배열요소

1.배열에 저장된 각 변수를 의미한다.
2.일반 변수와 다르게 자동으로 초기화 된다.
0,0.0,false,null 값으로 초기화 된다.
3. 배열요소 호출방법
배열명[인덱스]

배열의 길이는 "배열명.length" 로 알아 낼 수있다.

배열의 메모리 구조
배열= 참조타입[reference] -- 주소를 저장한다.
첫번째 요소만 알면 모든 요소의 위치를 알 수 있다(배열은 연속되기 때문이다.)

[I@3d012ddd
@ 는 at 이라는 의미
@뒤는 메모리 참조값(메모리 주솟값)

new는 메모리공간을 확보하라는 의미 (c++의 문법을 차용한것)

원래는 delete라는 키워드로 new로 잡아서 사용했던 공간을 풀어줬지만 자바에서는 스스로 메모리를 해제한다.(garbage collector가 담당: System.gc() 개발자가 집적 호출하는 방법(바로 실행되지는 않고 재촉하는 정도,실행순서 상승)

메모리 누수 - 놀고있는 메모리 공간이 있는것

System.arraycopy()- 배열을 다른 배열에 복사하는 시스템 클래스의 카피

ex) System.arraycopy(a, 0, b, 0, a.length);
배열 a 의 인덱스 0 부터 복사  배열 b 의 인덱스 0으로 보내기 시작 , a.length개  복사

Arrays.toString(배열명)- 배열 내용물 전체 단순 조회
ex) System.out.println(Arrays.toString(a));

profile
졸려요

0개의 댓글