[23] 배열 이란 ?
배열이란 ?
배열객체를 사용할때는 ArrayList 를 사용한다.
동일한 자료형의 순차적 자료 구조
배열 선언하기
Int[] arr = new int[10]; // [ ] 몇 개의 공간을 쓸것인가 그만큼 방이 생긴다.
학생 100명이 있다면 변수100개를 만든다는 것은 불합리 하다. 동일한 자료를 순차적으로 관리하는 기본적인 자료구조가 배열이다.
인트 4바이트가 10개 배열길이(length)를 가진다. 총 40바이트
시작하는 첫칸은 0번째 라고 부른다.
Int[] arr = new int[5]; 총 20바이트가 잡힌다.
배열의 길이는 length 라고 부른다. Length 가 5라고 부르면 인덱스는 0부터 4까지를 가지게된다. 즉 0부터 length-1 까지 가진다.
물리적 위치(위치가다른) 랑 논리적 위치(순서대로) 가 다른 LinkedList 가 있다.
포인터로 next에 대한 값을 가지게 된다. 연결되서
배열은 크게만들고 이 요소들을 복사해가지고 또다른 배열을 사용한다. 연속된 자료구조 이다.
배열의 요소중 삭제하면 왼쪽으로 하나씩 채워진다. 중간에 끼어놓고 싶으면 2부터 엘리먼트를 뒤로 미룬다. 물리적으로 연결되어 있어서 index 연산자 배열의 몇번째
arr[1] 계산하기 쉽다. 배열의 이름이 주소를 가지고 있기 때문에 이 첨자만큼의 옵셋 계산하면 그 배열의 인덱스의 위치의 값을 꺼내올수있다.
나중 ArrayList 를 쓰는데 데이터를 카피 , 중간에 넣을 때 데이터를 떙기거나 미룰 때 이미 구현이 되어있어서 이런것에 대한 연산자고민을 하지않고 사용할수있다.
LinkedList는 필요할때마다 추가한다.