반응형
순서대로저장, 중복허용
Array VS List
배열: 인덱스로인해 바로 찾을 수 있다.
리스트 : 순서를 중요하게 여김.
-추가할때
배열 : 덮어쓰기
리스트 :
-삭제할때
리스트:비어있는 데이터가 없음
배열: 삭제하더라도, 4번의 값이 바뀌지 않음. 유지. 3은 비어있음
리스트 기능
처음, 끝, 중간에 엘리먼트를 추가/삭제하는 기능
모든 데이터에 접근할 수 있는 기능
언어별 비교
C:리스트 지원안함.
자바스크립트:C와 닮음. 자바스크립에서는 배열이 리스트이기도 하다
파이썬: 배열 X 리스트O, 리스트가 배열이다라고 얘기 할수도 있다.
최근의 언어는 리스트를 기본적으로 지원한다.
자바: 두개 다 지원하고, 분리 되어 있다.
package com.company;
import java.util.ArrayList;
public class Main {
public static void main(String[] args){
int i = 0;
ArrayList alist = new ArrayList();
alist.add(1);
alist.add("2");
alist.add(4);
alist.add("hi");
alist.add(1);
while(alist.size() > i){
System.out.println(alist.get(i));
i++;
}
}
}
출력:
1
2
4
hi
1
더보기
궁금해서 ArrayList를 코드로 만들어보았다.
실습도 해볼겸?
일단 리스트는 신기하게도 int[] << 배열을 만들때 해주는것과는 사뭇 달랐다.
스트링도, 숫자도, 다 들어가는거 같았다.
그리고 다른점 하나 더는 length로 크기을 가져오는게 아니라, size을 사용한다.
그리고 get을 사용하면, 엘리멘트의 값을 가져온다.
while문을 사용해 배열을 가져올 떄는 size를 사용해보니 값이 5 라고 나왔다.
while(alist.size() > i){
System.out.println(alist.size());
i++;
출력 :
5
5
5
5
5
반응형
'개발공부 > 자료구조' 카테고리의 다른 글
자료구조(Linked list) 구현 (0) | 2020.12.04 |
---|---|
클래스의 인스턴스화2(Iterator 반복문) (0) | 2020.12.02 |
자료구조(클래스의 인스턴스화, Arraylist 만들어보기) (0) | 2020.11.26 |
자료구조(ArrayList) (0) | 2020.11.25 |
자료구조(Data Structure[feat.생활코딩]) 1 (0) | 2020.11.25 |