Java ArrayList를 사용하는 방법

Java ArrayList를 사용하는 방법

자바로 배열 목록 크기 조정이 가능한 범용 배열입니다. 일반적으로 다른 언어의 배열에서 기대되는 대부분의 기능을 제공합니다. 여기에는 인덱스를 사용한 요소 액세스, 요소 추가, 제거 및 업데이트, 동적 크기 조정, 요소 반복 등이 포함됩니다. 이러한 작업의 대부분은 범용 사용을 위해 특별히 조정되었습니다.





크롬에서 하드웨어 가속이란 무엇입니까

몇 가지 다른 유형의 '배열'( 목록 인터페이스, 기술용) 특수 목적을 위한 것입니다. 여기에는 다음이 포함됩니다.





  • 링크드리스트 중간 인덱스에서 빠른 삽입 및 제거를 지원합니다.
  • 벡터 와 비슷하다 배열 목록 그러나 동기화되고 대신에 적합합니다. 배열 목록 다중 스레드 응용 프로그램용.
  • 스택 후입 선출 목록을 모방하는 작업을 지원합니다. 그것은 연장한다 벡터 따라서 동기화됩니다.

이러한 특수 클래스는 이 문서의 범위를 벗어납니다. 그러나 범용 Java ArrayList를 설정하고 사용하는 방법을 배우게 됩니다.





ArrayList 만들기

만들기 배열 목록 간단합니다. 빈 배열 목록 인수가 없는 생성자를 사용하여 생성할 수 있습니다. 여기서 우리는 문자열을 담기 위한 빈 arraylist를 생성합니다.

ArrayList alist = new ArrayList();

어레이 목록에 포함할 항목 수를 알고 있는 경우 초기 용량을 지정할 수 있습니다. 이 초기 용량은 메모리 할당에 대한 힌트일 뿐입니다. arraylist는 지정된 수의 항목을 보유하는 것으로 제한되지 않습니다. 초기 용량을 알고 지정하면 ~ 할 것 같다 성능이 약간 향상됩니다.

ArrayList alist = new ArrayList(20);

ArrayList 채우기

끝에 항목 추가

arraylist를 채우는 것은 아주 쉽습니다. 그냥 사용 추가하다() arraylist의 끝에 단일 항목을 추가하는 메서드입니다. 다음은 예입니다.

ArrayList alist = new ArrayList();
alist.add('apple');
alist.add('banana');
alist.add('cantaloupe');
alist.add('orange');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, orange]

arraylist에 몇 개의 항목이 있는지 찾으려면 메서드를 사용하십시오. 크기() .

System.out.println('Number of elements in the arraylist: ' + alist.size());
# prints
Number of elements in the arraylist: 4

지정된 인덱스에 항목 추가

임의의 인덱스에 항목을 추가하고 싶습니까? 인덱스를 첫 번째 인수로 지정하면 해당 인덱스에 항목이 추가됩니다.

alist.add(3, 'grapes');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange]

항목 묶음 추가

Java 컬렉션 계층 구조의 모든 컬렉션에서 항목을 추가할 수도 있습니다. NS 배열 목록 라는 특정 유형입니다. 목록 . 다음은 구성하는 방법입니다. 목록 많은 항목에서 (사용 Arrays.asList() )에 추가 배열 목록 .

List items = Arrays.asList('pear', 'cherry');
alist.addAll(items);
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]

물론 여기에서 인덱스를 첫 번째 인수로 지정하여 해당 인덱스에서 시작하는 항목을 추가할 수 있습니다.

항목 액세스

항목이 arraylist에 추가되면 어떻게 다시 액세스합니까?

인덱스로 접근하기

항목의 색인을 알고 있으면 다음을 사용할 수 있습니다. 가져 오기() 해당 인덱스에서 요소를 검색하는 메서드입니다.

마인크래프트 서버 ip 찾는 방법
String item = alist.get(2);
System.out.println('Item at index 2 is: ' + item);
# prints
Item at index 2 is: cantaloupe

아이템 찾기

아이템의 인덱스를 모른다면? 당신이 사용할 수있는 indexOf() 항목이 배열에 있는지 확인하고 반환된 인덱스를 사용하여 항목을 검색합니다.

System.out.println(alist);
int index = alist.indexOf('orange');
if ( index <0 )
System.out.println('Item 'orange' not found');
else
System.out.println('Item 'orange' found at index ' + index);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]
Item 'orange' found at index 4

항목이 arraylist에 없으면 어떻게 됩니까? NS indexOf() 항목을 찾을 수 없는 경우 메서드는 -1을 반환합니다.

index = alist.indexOf('grape');
if ( index <0 )
System.out.println('Item 'grape' not found');
else
System.out.println('Item 'grape' found at index ' + index);
# prints
Item 'grape' not found

ArrayList 반복

물론 가장 많이 사용되는 배열 목록 요소를 반복하고 있습니다. 이것은 여러 가지 방법으로 수행할 수 있습니다. 우리는 여기에 몇 가지 간단한 것을 보여줍니다.

다음은 arraylist를 반복하고 일종의 처리를 위해 항목을 추출하는 가장 간단한 방법입니다.

for (String fruit : alist) {
System.out.println('Found fruit '' + fruit + ''');
}
# prints
Found fruit 'apple'
Found fruit 'banana'
Found fruit 'cantaloupe'
Found fruit 'grapes'
Found fruit 'orange'
Found fruit 'pear'
Found fruit 'cherry'

이 코드는 Java 1.5에 도입된 Java Enhanced For-Loop를 사용합니다. 그 전에는 iterator를 사용하여 항목을 반복할 수 있습니다. 반복자는 필요한 경우에도 사용됩니다. 제거하다 아래 예제와 같이 반복 과정에서 요소. (우리는 arraylist의 복사본을 만들고 복사본에 대해 작업합니다.)

ArrayList blist = new ArrayList(alist);
for (Iterator iter = blist.iterator() ; iter.hasNext() ; ) {
String fruit = iter.next();
if ( fruit.startsWith('c') )
iter.remove();
else
System.out.println('Keeping '' + fruit + ''');
}
# prints
Keeping 'apple'
Keeping 'banana'
Keeping 'grapes'
Keeping 'orange'
Keeping 'pear'

아이템 교체

항목이 추가되면 원하지 않는 항목을 대체할 방법이 필요합니다. 그것은 다음을 사용하여 수행할 수 있습니다. 세트() 인덱스가 있는 메소드

alist.set(5, 'pineapple');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pineapple, cherry]

항목 제거

이제 arraylist에서 항목을 제거하는 방법을 살펴보겠습니다. 항목의 색인을 알고 있는 경우(아마도 indexOf() 위에서 설명한), 당신은 사용할 수 있습니다 제거하다() 인덱스가 있는 메소드. 제거된 요소를 반환합니다.

String fruit = alist.remove(2);
System.out.println('Removed element at 2: ' + fruit);
# prints
Removed element at 2: cantaloupe

제거할 요소를 지정할 수도 있습니다. 첫 번째 목록에서 요소의 발생. 메서드 반환 진실 요소가 발견되어 제거된 경우.

어디에서 무료 영화를 다운로드할 수 있나요
fruit = 'grapes';
System.out.println('Remove ' +fruit+ ' from the list? ' + alist.remove(fruit));
# prints
Remove grapes from the list? true

어떻게 사용하고 있습니까? 배열 목록 당신의 프로젝트와 어떤 특별한 문제에 직면 했습니까? 아래 의견에 알려주십시오.

공유하다 공유하다 트위터 이메일 Android에서 Google의 내장 버블 레벨에 액세스하는 방법

무언가가 수평인지 확인해야 했던 적이 있다면 이제 몇 초 만에 휴대전화에서 거품 수준을 확인할 수 있습니다.

다음 읽기
관련 항목
  • 프로그램 작성
  • 자바
저자 소개 제이 스리다르(17건의 기사 게재) 제이 스리다르가 참여한 작품 더보기

뉴스레터 구독

뉴스레터에 가입하여 기술 팁, 리뷰, 무료 전자책 및 독점 거래를 확인하십시오!

구독하려면 여기를 클릭하세요.