자바 - list 클래스
List 집합 하위 구현 클래스 의 특징:
ArrayList:
바 텀 데이터 구 조 는 배열 의 형식 으로 배열 구조의 특징 을 만족시킨다. 조회 가 빠 르 고 삭제 가 느리다.
스 레 드 안전 문 제 를 보면 스 레 드 가 안전 하지 않 고 동기 화 되 지 않 으 며 집행 효율 이 높다.
Array List 는 List 집합 의 자체 실현 클래스 이기 때문에 요 소 는 중복 되 고 저장 과 추출 이 일치 합 니 다.
Vector:
바 텀 데이터 구 조 는 배열 의 형식 으로 조회 가 빠 르 고 삭제 가 느리다.
스 레 드 측면 에서 볼 때 스 레 드 안전 클래스, 동기 화, 실행 효율 이 낮 습 니 다.
고유 기능:
public void addElement (E obj) --- - > 는 add (Object e) 에 해당 합 니 다.
public Enumeration elements () --- > 는: Iterator iterator () 에 해당 합 니 다.
Enumeration 인터페이스: 벡터 구성 요 소 는 두 가지 방법 이 있 습 니 다.
boolean hasMoreElements (): --- > 는 hasNext () 에 해당 합 니 다.
Object nextElement (): --- --- -- > 는 next () 에 해당 합 니 다.
public class VectorDemo {
public static void main(String[] args) {
Vector v=new Vector();
v.addElement("I");
v.addElement("Love");
v.addElement(" ");
//
Enumeration en=v.elements();
while(en.hasMoreElements()){
String s=(String)en.nextElement();
System.out.println(s);
}
}
}
LinkedList:
바 텀 데이터 구 조 는 링크 목록 입 니 다. 특징: 조회 가 느 리 고 삭제 가 빠 릅 니 다.
스 레 드 측면 에서 볼 때 스 레 드 가 안전 하지 않 은 클래스 로 동기 화 되 지 않 고 실행 효율 이 높다.
고유 기능:
기능 추가:
public void addFirst (E) 는 이 목록 의 시작 에 지정 한 요 소 를 삽입 합 니 다.
public void addLast (E) 는 이 목록 의 끝 에 지정 한 요 소 를 추가 합 니 다.
가 져 오기 기능:
public Object getFirst () 이 목록 의 첫 번 째 요 소 를 되 돌려 줍 니 다.
public Object getLast () 는 이 목록 의 마지막 요 소 를 되 돌려 줍 니 다.
삭제 기능:
public Object removeFirst () 이 목록 의 첫 번 째 요 소 를 제거 하고 되 돌려 줍 니 다.
public Object removeLast () 이 목록 의 마지막 요 소 를 제거 하고 되 돌려 줍 니 다.
import java.util.LinkedList;
public class LinkedListDemo {
public static void main(String[] args) {
LinkedList list=new LinkedList();
//
list.addFirst("I");
list.addFirst("Love");
list.addFirst(" ");
System.out.println(list);
System.out.println("---------");
//
System.out.println(list.getFirst());
System.out.println(list.getLast());
System.out.println("---------");
//
list.removeFirst();
list.removeLast();
System.out.println(list);
}
}
결 과 는:
[입 화주, Love, I] --------------------- [Love]
LinkedList 는 스 택 구조의 특징 을 모 의 합 니 다.
표현: 스 택 집합 류 를 사용자 정의 한 다음 에 링크 드 List 의 일부 특유 한 기능 을 사용 하여 스 택 구조 특징 을 모 의 합 니 다. 링크 드 List 집합 특유 의 기능: addFirst (Object e) 스 택 구조의 특징: 선진 적 인 후 출.
다 중 스 레 드 프로그램 이 실행 되면 일반적으로 안전 한 클래스: StringBuffer, Vector, hashtable.
일반적인 수요 에서 집합 을 사용 하여 완성 하 는 것 을 가리 키 지 않 으 면 기본적으로 Array List 를 사용 합 니 다. 필요 할 때 스 레 드 안전 을 고려 하려 면 Vector 집합 을 사용 하 십시오!
필기시험 과정 에서 일부 수 요 는 집합 에 사용 된다. 바로 Array List 를 사용 하 는 것 이다.
범 형: 데이터 형식의 명확 한 작업 을 생 성 대상 이나 호출 방법 으로 앞 당 겨 명확 한 특수 유형 을 제공 합 니 다. 매개 변수 화 유형 은 매개 변수 처럼 전달 할 수 있 습 니 다.
형식:
: 범 형 은 인용 형식 만 넣 을 수 있 습 니 다.
일반적인 장점:
1) 운행 시 기 를 이상 하 게 컴 파일 시기 로 앞 당 겼 다.
2) 황색 경고 선 문제 해결
3) 데 이 터 를 가 져 올 때 형식 변환 을 강제 하지 않 아 도 됩 니 다.
일반적인 고급: 어댑터
>: Object 형식 및 임의의 자바 클래스 를 포함 하여 임의의 형식 일 수 있 습 니 다.
extends E >: 아래 한정, E 유형 및 E 유형의 하위 클래스
슈퍼 E >: 위로 한정, E 타 입 및 E 타 입의 부모 클래스
관련 코드:
import java.util.ArrayList;
import java.util.Collection;
public class GenericDemo {
public static void main(String[] args) {
//
Collection
증강 for 순환:
쓰기 형식:
for (집합 또는 배열 의 데이터 형식 변수 이름: 집합 또는 배열 의 대상 이름) {
출력 변수 이름;
}
for 순환 의 폐단 강화:
배열 이나 집합 을 옮 겨 다 닐 때 배열 대상 이나 집합 대상 은 null 일 수 없습니다.
대상 이 비어 있 으 면, 일반적으로 비 공 판단 을 더 합 니 다.
증강 for 순환 의 출현 은 교체 기 를 대체 하여 집합 을 옮 겨 다 니 는 것 입 니 다. 이후 개발 에 서 는 증강 for 로 요 소 를 옮 겨 다 니 는 것 입 니 다.
관련 코드:
import java.util.ArrayList;
public class forDemo {
public static void main(String[] args) {
// ,
int[] arr = {11,22,33,44,55} ;
// for
for(int x = 0 ; x < arr.length ; x ++){
System.out.println(arr[x]);
}
System.out.println("-------------------");
// for
for(int i :arr){
System.out.println(i);
}
System.out.println("-------------------");
// ,
String[] strArray = {"hello","world","java"};
// for
for(String s : strArray){
System.out.println(s);
}
System.out.println("-------------------");
// ArrayList ,
ArrayList array = new ArrayList() ;
//
array.add("hello") ;
array.add("world") ;
array.add("java") ;
// for
for(String s :array){
//
//java.util.ConcurrentModificationException
//// "world",
if("world".equals(s)){
array.add("javaee") ;
}
}
System.out.println("-------------------");
/* array = null ;
//java.lang.NullPointerException:
if(array!=null){
// for
for(String s:array){
System.out.println(s);
}
}*/
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.