본문 바로가기
Develop/Ps

[Java] List 메서드

by J-rain 2024. 4. 11.
  • 주요 메서드
    • .add((index), val): 순서대로 리스트를 추가, 배열 사이즈 초과 시 초기 설정된 사이즈만큼 자동으로 사이즈가 증가함, 인덱스를 추가로 지정해주면 해당 인덱스에 값을 삽입
    • .get(index): 해당 인덱스의 값 반환
    • .set(index, val): 인덱스로 값 변경
    • .indexOf(val): 값을 제공하면 해당 값의 첫번째 인덱스를 반환
    • .lastindexOf(val): 해당 값의 마지막 인덱스 반환
    • .remove(index or val): 해당 인덱스의 값 or 해당 값 중 첫번째 값 삭제
    • .contains(val): 해당 값이 배열에 있는지 검색해서 true / false 반환
    • .containsAll(val1, val2...): argument로 제공한 컬렉션의 모든 값이 포함되어 있는지 여부를 true / false로 반환
    • .toArray(): ArrayList 타입의 인스턴스를 일반 배열 타입으로 반환, 저장할 배열 타입에 맞춰 자동 형변환, 배열 크기 또한 자동으로 맞춰서 바꿔줌
    • .clear(): 값 모두 삭제
    • .isEmpty(): 비었으면 true, 하나라도 값이 있으면 false 반환
    • .addAll(arr2): 두 컬렉션을 합침
    • .retainAll(arr2): argument로 제공한 컬렉션 내에 들어있는 값을 제외하고 모두 지워줌
    • .removeAll(arr2): argument로 제공한 컬렉션 내에 들어있는 값과 일치하는 값을 모두 지워줌, retainAll() 메소드와 반대
    • .size(): 요소 개수 반환
 public static void main(String[] args) {
        ArrayList<String> al = new ArrayList<>();

        // 리스트 요소 추가
        al.add("박");
        al.add("김");
        al.add("최");
        System.out.println(al); // [박, 김, 최]

        al.add(1, "이");
        System.out.println(al); // [박, 이, 김, 최]

        // 해당 인덱스의 값 반환
        System.out.println(al.get(0)); // 박

        // 인덱스로 값 변경
        al.set(3, "정");
        System.out.println(al); // [박, 이, 김, 정]

        // 인덱스로 값 찾기
        al.add("박"); // [박, 이, 김, 정, 박]
        System.out.println(al.indexOf("박")); // 0
        System.out.println(al.lastIndexOf("박")); // 4

        // 값 삭제
        al.remove(4);
        System.out.println(al); // [박, 이, 김, 정]

        al.add("정"); // [박, 이, 김, 정, 정]
        al.remove("정");
        System.out.println(al); // [박, 이, 김, 정]

        // 값 포함하는지
        System.out.println(al.contains("정")); // true

        // Array로 변환
        System.out.println(al.toArray()); // [Ljava.lang.Object;@7d6f77cc

        // 배열 비우기
        al.clear();
        System.out.println(al); // []

        // 배열 비었는 지 확인
        System.out.println(al.isEmpty()); // true

        // 두 리스트 합치기
        ArrayList<String> al1 = new ArrayList<>();
        al1.add("박");
        al1.add("김");
        al1.add("이");

        ArrayList<String> al2 = new ArrayList<>();
        al2.add("최");
        al2.add("정");
        al2.add("박");

        al1.addAll(al2);
        System.out.println(al1); // [박, 김, 이, 최, 정, 박]

        // 한 리스트가 한 리스트 포함하는지
        System.out.println(al1.containsAll(al2)); // true

        // 리스트 해당 요소 빼고 지우기
        al1.retainAll(al2);
        System.out.println(al1); // [박, 최, 정, 박]

        // 리스트 해당 요소 지우기
        al1.removeAll(al2);
        System.out.println(al1); // []

        // 요소 개수 반환
        System.out.println(al1.size()); // 0
        System.out.println(al2.size()); // 3
    }

'Develop > Ps' 카테고리의 다른 글

[Java] String 메서드  (0) 2024.04.15
[Java] Set 메서드  (0) 2024.04.15
[Java] Map 메서드  (0) 2024.04.11
[C++] STL Priority_queue 사용법  (0) 2024.01.07
[C++] STL map 사용법  (0) 2023.12.24

댓글