구분 | 순차적으로 추가/삭제 | 중간에 추가/삭제 | 검색 |
---|---|---|---|
ArrayList | 빠름 | 느림 | 빠름 |
LinkedList | 느림 | 빠름 | 느림 |
Array is Immutable: 배열은 생성시에 크기가 고정되어있는 Immutable한 특징을 가지고 있음
최초 메모리 할당 이후에는 변경할 수 가 없다.
개별 요소는 다른 값으로 변경이 가능하나, 삭제는 불가하다.
크기를 늘리거나 줄일 수 없다.
변경이 필요한 경우, 새로 작성하는 것이 일반적으로 유리하다.
List<String> list = new ArrayList<String>(); //저장할 객체 타입을 타입 파라미터로 표기하고 기본 생성자를 호출하면 된다.
List<E> list = new LinkedList<E>();
아래를 순차적으로 돌려서 나오도록 하시오. List<String> list = new ArrayList<>(); // 컬렉션 인스턴스 생성 // 컬렉션 인스턴스에 문자열 인스턴스 저장 list.add("Toy"); list.add("Box"); list.add("Robot");
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class collectionFramework2 {
public static void main(String[] args) {
List<String> list = new LinkedList<>();
list.add("Toy");
list.add("Box");
list.add("Robot");
for (int i = 0; i < list.size(); i++) { // 1. for문 활용
System.out.print(list.get(i) + '\t');
}
System.out.println();
Iterator<String> itr = list.iterator(); // 2. Iterator문 활용
while (itr.hasNext()) {
System.out.print(itr.next() + '\t');
}
System.out.println();
for (String s : list) // 3. enhanced for문 활용
System.out.print(s + '\t');
System.out.println();
}
}
import java.util.ArrayList;
import java.util.InputMismatchException;
import java.util.List;
import java.util.Scanner;
public class listTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
List<Integer> list = new ArrayList<>();
System.out.println("양의 정수를 입력하시오. ");
int input;
while (true) {
try {
input = sc.nextInt();
} catch (InputMismatchException e) {
System.out.println("잘못 입력하셨어요."); // input에 숫자가 아닌 문자가 입력될 때 실행
continue;
}
if (input == -1) { // -1 일 때는 실행 중지
break;
} else {
if (input <= 0) { // -1은 아니지만 0 또는 음수일 때 다시 입력 받기
System.out.println("다시 입력하시오.");
continue;
} else {
list.add(input); // 양의 정수를 입력 받을 때 list에 추가
}
}
}
int max = 0; // 최대값 찾기
for (int i = 0; i < list.size(); i++) {
if (max < list.get(i)) {
max = list.get(i);
}
}
System.out.println(max);
}
}
- 6개의 학점을 빈 칸으로 분리 입력(A/B/C/D/F) >> A C A B F D 2.3333333333333335
A: 4.0
B: 3.0
C: 2.0
D: 1.0
F: 0.0