Java 자료형 - List - ArrayList

2022. 6. 3. 18:28·Programming Language/Java

리스트와 배열의 차이점

 

리스트와 배열의 가장 큰 차이는 크기가 정해져 있지 않고 동적으로 변한다는 점이다. 배열은 크기가 정해져 있다. 예를 들어 배열의 크기를 10개로 정했다면 10개 이상의 값을 담을 수는 없다. 하지만 리스트는 크기가 정해져 있지 않아 원하는 만큼의 값을 담을 수 있다.

ArrayList 인터페이스에서 많이 쓰이는 메서드

  • add
  • get
  • remove
  • size
  • contains

 

ArrayList의 메서드를 사용하려면

import java.util.ArrayList; << 를 선언해주어야 사용할 수 있다.

 

add()

import java.util.ArrayList;

public class Main3 {
    public static void main(String[] args) {
        ArrayList<String> pitches = new ArrayList<>();
        pitches.add("Hello"); // 이렇게 추가할 수 있다.
        pitches.add("World");
    }
}

 

 

get()

import java.util.ArrayList;

public class Main3 {
    public static void main(String[] args) {
        ArrayList<String> pitches = new ArrayList<>();
        pitches.add("Hello");
        pitches.add("World");
        System.out.println(pitches.get(0));//0번째를 가지고 온다.
        System.out.println(pitches.get(1));
    }
}

remove()

import java.util.ArrayList;

public class Main3 {
    public static void main(String[] args) {
        ArrayList<String> pitches = new ArrayList<>();
        pitches.add("Hello");
        pitches.add("World");
        pitches.remove(1); // pitches.remove("Hello"); << 똑같이 사용가능
    }
}

 

size()

import java.util.ArrayList;

public class Main3 {
    public static void main(String[] args) {
        ArrayList<String> pitches = new ArrayList<>();
        pitches.add("Hello");
        pitches.add("World");
        System.out.println(pitches.size()); // 크기를 알 수 있다. int형으로 나온다.
    }
}

contains()

import java.util.ArrayList;

public class Main3 {
    public static void main(String[] args) {
        ArrayList<String> pitches = new ArrayList<>();
        pitches.add("Hello");
        pitches.add("World");
        System.out.println(pitches.contains("Hello")); // 해당 문자열이 포함 되어 있는 지 알 수 있다.
    }
}

ArrayList는 원래 있는 배열로도 만들 수 있다. => Arrays.asList()를 이용해서 만들 수 있다.

String.join을 사용해서 각 배열안에 구분자를 넣어서 String을 새로 만들 수 있다.

import java.util.ArrayList;
import java.util.Arrays;

public class Main3 {
    public static void main(String[] args) {
        String[] arr = {"Hello","World","Good"};
        ArrayList<String> pitches = new ArrayList<>(Arrays.asList(arr));
        pitches.add("Hi");
        String result = String.join(",",pitches);
        System.out.println(pitches);
        System.out.println(result);
    }
}

리스트 정렬하기

import java.util.*;

public class Main3 {
    public static void main(String[] args) {
        Integer[] arr = {12,13,144,224};
        ArrayList<Integer> pitches = new ArrayList<>(Arrays.asList(arr));
            pitches.add(42244);
            pitches.add(1);
        pitches.sort(Comparator.naturalOrder()); //        Collections.sort(pitches);
        System.out.println(pitches);
        // 오름차순
        pitches.sort(Comparator.reverseOrder());//         Collections.sort(pitches, Collections.reverseOrder());
        System.out.println(pitches);
        // 내림차순
    }
}
저작자표시 (새창열림)

'Programming Language > Java' 카테고리의 다른 글

Java 제어문 - 무한 for문 , for each 문  (0) 2022.06.07
Java 자료형 - Map - HashMap  (0) 2022.06.03
Java 자료형 - 문자열(String), StringBuffer  (0) 2022.05.07
Java 자료형 - 문자(char)  (0) 2022.05.07
Java 자료형 - boolean(true or false)  (0) 2022.05.07
'Programming Language/Java' 카테고리의 다른 글
  • Java 제어문 - 무한 for문 , for each 문
  • Java 자료형 - Map - HashMap
  • Java 자료형 - 문자열(String), StringBuffer
  • Java 자료형 - 문자(char)
DevelopJJong
DevelopJJong
기록에서 기억까지
  • DevelopJJong
    기록에서 기억까지
    DevelopJJong
  • 전체
    오늘
    어제
    • 분류 전체보기 (62)
      • 프로젝트 (1)
        • 팀 프로젝트 (0)
        • 토이프로젝트 (1)
        • 디스코드 봇 개발 (0)
      • Web (8)
        • Spring (5)
        • Server (1)
      • Knowledge (0)
        • 자료구조 (0)
        • 디자인 패턴 (0)
        • 개발 지식 (0)
      • DBMS (2)
        • Oracle (2)
        • MySQL (0)
      • 알고리즘 (25)
        • 알고리즘 기초 (1)
        • 백준 (22)
        • 프로그래머스 (2)
        • 코드업 (0)
      • Programming Language (9)
        • Java (9)
        • Python (0)
      • 이론 공부 (4)
        • 자료구조 (0)
        • 컴퓨터과학(CS) (1)
        • 이산수학 (0)
        • 네트워크 (3)
      • Tool (8)
        • IntelliJ (6)
        • Git (1)
        • etc. (1)
      • 일상 (0)
        • 맛집 리뷰 (0)
        • 소소한 이야기 (0)
      • 독서 후기 (0)
      • etc. (1)
      • TIL (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

    • 쫑이가 공부하는 공간 (광고 및 수익창출 X)
  • 인기 글

  • 태그

    생성자만드는법#생성자단축키#인텔리제이
    인터넷 뜻
    네트워크 #LAN #랜선 #WAN #근거리 통신망 #원거리 통신망 #인터넷 #네트워크 공부 #프로토콜 뜻 #프로토콜
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
DevelopJJong
Java 자료형 - List - ArrayList
상단으로

티스토리툴바