ArrayList method 정리

최성민·2021년 1월 5일

method

  • Collection Interface

isEmpty()

contatins(Object o)

: return 해당 객체가 존재하면 true,
boolean 타입으로 전달하게 때문에 if문에 사용가능

size()

: 리스트의 크기를 return

add(Object o )

: 리스트에 전달된 객체를 맨 마지막에 추가

add(int index, Object o )

: 리스트에 해당 인덱스에 객체를 추가

remove(int index)

: 인덱스에 해당하는 아이템을 삭제
return 해당 객체

remove(Object o)

: 인자와 동일한 객체를 리스트에서 검색해서 삭제
return 해당 객체를 찾아서 삭제 완료하면 true

replaceAll()

: a.replaceAll(b)하면 a,b의 공통 요소들만 저장		된다고하는데 자세히는 필요할때 찾아보기

addAll(Collection c)
addAll(int index, Collection c)

: 해당 Collection에 있는 모든 아이템들을 
맨 마지막에 추가하거나, 해당 인덱스 위치에 추가하거나
ArrayList<String>  marvel = new ArrayList<>();
marvel.add("Iron man");
marvel.add("Hulk");
marvel.add("Captain america");

ArrayList<String>  movies = new ArrayList<>();
movies.add("Untouchable");
movies.add("Spiderman");
movies.add("Greenbook");

movies.addAll(2, marvel);

contatinsAll(Collection c)

: 해당 컬랙션 전부가 있으면 return true 아니면 falese

retainAll(Collection c)

: removeAll과는 반대로 전달받은 collection만 남김
removeAll은 A.removeAll(B)하면 A에서 B만 제거
retainAll은 A.retainAll(B)하면 A에서 B만 남김 

removeAll(Collection c)

: 해당 collections의 아이템들과 일치하는 객체들을 모두 삭제

removelf(Predicate<? super E> filter)

: 인자로 전달된 조건으로 리스트의 아이템들을 
삭제조건에 부합하는 것은 삭제되고, 
그렇지 않는 것은 리스트에 남게 됩니다
람다식 사용
List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9));

numbers.removeIf(n -> (n % 3 == 0));

clear()

: 모두 null로 초기화하고 size를 0으로

toArray()

: ArrayList 타입의 인스턴스를 일반 배열 타입으로 반환
저장할 배열 타입에 맞춰서 자동 형변환
배열의 크기 또한 자동으로 맞춰서 바꿔줌

Arrays의 asList(arr)를 사용해서 반대의 효과를 얻을 수 있음.
일반 배열 -> List 형태로 반환.
ArrayList<Integer> a = new ArrayList<>(Arrays.asList(arr));
  • Collections Static Method

sort()

: Collections의 sort 메소드
Collections.sort(Collections c, operator)
  • Object Class Method

clone()

ArrayList를 얕은 복사함
ArrayList<String> clone = (ArrayList<String>) fruits.clone();
  • Iterable Interface

forEach(Consumer<? super E> action)

: 모든 리스트를 순회하는 메소드
람바식을 받아들여서 모든 리스트를 순회하는 메소드같음.
String[] fruitsArray = {"apple", "banana", "kiwi", "mango", "blackberry"};
ArrayList<String>  fruits = new ArrayList<>(Arrays.asList(fruitsArray));

Consumer<String> lambda= item -> System.out.println("item : " + item);
fruits.forEach(lambda);

System.out.println("");
fruits.forEach(item -> System.out.println("item : " + item));

값 검색


get(int index)

: 인덱스보다 큰 범위 전달받으면 IndexOutOfBoundsException 전달
return 해당 인덱스의 객체

indexOf(Object o)

: 	앞쪽에서부터 검색해서 return
return 찾은 인덱스 or -1

lastindexOf()

: 뒤쪽에서부터 검색해서 return, return 찾은 인덱스 or -1

값 추가, 제거, 변경


sublist(int start, int end+1)

:  start ~ end까지 ArrayList를 복사함
List<Integer> newNumbers = numbers.subList(1,3);
하면 [1] ~ [2]까지 새로운 ArrayList 만듬

set(int index, Object o)

: 해당 인덱스의 값을 변경
profile
공부합시다

1개의 댓글

comment-user-thumbnail
2021년 1월 7일

어쩌고?

답글 달기