이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 13604|회답: 0

[자바SE] Java 내 리스트 컬렉션 탐색과 두 구현 클래스의 비교 분석

[링크 복사]
게시됨 2015. 1. 4. 오후 1:29:38 | | |
[mw_shl_code=java,true]package com.sort;  
  
import java.util.ArrayList;  
import java.util.Iterator;  
import java.util.List;  
  
/**
* 리스트의 세 가지 탐색 유형
* @author 소유주
*
*/  
public class ListTest {  
  
    public static void main(String[] args) {  
         
        리스트<String> 리스트 = 새로운 ArrayList<String>();  
         
        list.add("a");  
        list.add("b");  
        list.add("c");  
        list.add("c"); 중복 데이터를 추가할 수 있습니다  
         
        횡단 방법 1  
        for(Iterator<String> iterator = list.iterator(); iterator.hasNext(); ){  
            String value = iterator.next();  
              
            System.out.println(value);  
        }  
         
        횡단 방법 2  
        for(문자열 값 : list){  
            System.out.println(value);  
        }  
         
        이동 방법 3  
        for(int i=0; i<list.size(); i++){  
            System.out.println(list.get(i));  
        }  
         
    }  
} [/mw_shl_code]


세 가지 이동에 대한 비교 분석:

방법 1 횡단:

실행 중에는 데이터 락이 수행되고, 성능은 약간 떨어지며, 루프 중에 요소를 제거하려면 it.remove 메서드만 호출할 수 있습니다.   

방법 2 이동:

첫 번째 타입을 내부에서 호출하세요

방법 3: 이동:

내부적으로 잠기지 않아 가장 효율적이지만, 멀티스레딩을 작성할 때는 동시 연산 문제를 고려해야 합니다

List 인터페이스의 두 가지 주요 구현체인 ArrayList와 LinkedList는 이렇게 탐색할 수 있습니다

ArrayList와 LinkedList 비교 분석
a) ArrayList의 기본 계층은 배열로 구현되며, LinkedList의 기본 계층은 양방향 연결 리스트로 구현됩니다.
b) 삽입 또는 삭제 작업을 수행할 때는 LinkedList를 사용하는 것이 더 좋습니다.
c) 검색 연산을 수행할 때는 ArrayList를 사용하는 것이 더 좋습니다.


솔직히 말해, 데이터 구조 내에서는 순차적 저장과 체인 저장입니다




이전의:jstl 태그 &lt;c:if&gt;
다음:java:list和set集合的遍历
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com