List 와 Array List, LinkList 의 차이
Array List < E > 는 하나의 클래스 입 니 다. List 인 터 페 이 스 를 실현 한 클래스 이기 때문에 List 에서 정의 할 수 있 는 모든 방법 이 실 현 됩 니 다.
1. ArrayList 는 동적 배열 을 바탕 으로 하 는 데이터 구 조 를 실현 하고 LinkedList 는 링크 를 바탕 으로 하 는 데이터 구 조 를 실현 한다.
2. 랜 덤 액세스 get 과 set 에 대해 Array List 는 LinkedList 보다 낫다 고 생각 합 니 다. LinkedList 는 지침 을 이동 해 야 하기 때 문 입 니 다.
3. 추가 및 삭제 작업 add 와 remove 에 대해 서 는 linedList 가 우세 합 니 다. ArrayList 가 데 이 터 를 이동 해 야 하기 때 문 입 니 다.
시간 복잡 도
우선 중요 한 것 은 Array List 의 내부 실현 은 기본 적 인 대상 배열 을 바탕 으로 하 는 것 이기 때문에 get 방법 으로 목록 의 모든 요 소 를 방문 할 때 (random access) 는 LinkedList 보다 속도 가 빠르다 는 것 이다.링크 드 리스트 의 get 방법 은 목록 의 한 끝 에서 다른 한 끝 까지 순서대로 검사 하 는 것 입 니 다.링크 목록 에 있 는 지정 한 요 소 를 방문 하 는 것 은 더 빠 른 방법 이 없습니다.
eg:
List :
List list = new ArrayList();// ArrayList
List list = new Vector();// Vector
집합 을 모방 하 다.List ,Collection ,ArrayList
MyCollection. java 기본 인터페이스
package com.sun.test;
public interface MyCollection {
public void Sayname();
}
MyList .java
package com.sun.test;
public interface MyList extends MyCollection {
public void say();
}
MyArrayList.java
package com.sun.test;
public class MyArrayList implements MyList {
public void say() {
// TODO Auto-generated method stub
System.out.println(" List");
}
public void Sayname() {
// TODO Auto-generated method stub
System.out.println(" Collection");
}
}
TestList. java 인터페이스의 유형 에 따라 new 에서 나 온 대상 이 실현 할 수 있 는 방법 도 다 릅 니 다.
package com.sun.test;
public class TestList {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
MyList mylist = (MyList) new MyArrayList();
mylist.say();
mylist.Sayname();
MyCollection mylist2 = (MyCollection) new MyArrayList();
mylist2.Sayname();
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.