SeouliteLab

[Java/자바] 리스트를 두 개의 리스트로 나누기: sublist() 메서드 활용 본문

프로그래밍

[Java/자바] 리스트를 두 개의 리스트로 나누기: sublist() 메서드 활용

Seoulite Lab 2024. 3. 7. 09:33

리스트를 두 개의 서브 리스트로 나누는 것은 자주 발생하는 작업 중 하나입니다. Java의 ArrayList 클래스에서는 sublist() 메서드를 사용하여 이 작업을 수행할 수 있습니다. 이 블로그 포스트에서는 sublist() 메서드를 사용하여 리스트를 두 개의 서브 리스트로 나누는 방법을 살펴보겠습니다.

예제 1: sublist() 메서드를 사용하여 리스트 나누기

List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);

List<Integer> sublist1 = numbers.subList(0, 3);
List<Integer> sublist2 = numbers.subList(3, numbers.size());

System.out.println("Sublist 1: " + sublist1);  // Sublist 1: [1, 2, 3]
System.out.println("Sublist 2: " + sublist2);  // Sublist 2: [4, 5]

이 예제에서는 numbers 리스트를 두 개의 서브 리스트로 나누어서 출력합니다.

예제 2: 사용자 입력 기반으로 리스트 나누기

Scanner scanner = new Scanner(System.in);
System.out.print("Enter the number of elements: ");
int n = scanner.nextInt();

List<Integer> numbers = new ArrayList<>();
System.out.println("Enter the elements:");
for (int i = 0; i < n; i++) {
    numbers.add(scanner.nextInt());
}

int midpoint = numbers.size() / 2;
List<Integer> sublist1 = numbers.subList(0, midpoint);
List<Integer> sublist2 = numbers.subList(midpoint, numbers.size());

System.out.println("Sublist 1: " + sublist1);
System.out.println("Sublist 2: " + sublist2);

이 예제는 사용자로부터 입력을 받아 리스트를 두 개의 서브 리스트로 나누어 출력합니다.