> Java > java지도 시간 > Java에서 목록을 int[]로 효율적으로 변환하려면 어떻게 해야 합니까?

Java에서 목록을 int[]로 효율적으로 변환하려면 어떻게 해야 합니까?

Linda Hamilton
풀어 주다: 2024-12-17 12:55:25
원래의
604명이 탐색했습니다.

How Can I Efficiently Convert a List to an int[] in Java?

변환 목록<정수> Java에서 int[]로 변환: Java 8 스트림을 사용한 솔루션

Java 프로그래머는 종종 List int[] 배열로. 이 변환에 루프를 사용할 수 있지만 이는 비효율적이고 오류가 발생하기 쉽습니다. 다행스럽게도 Java 8 스트림은 더욱 간결하고 우아한 솔루션을 제공합니다.

1. mapToInt()

사용하면 Streams는 스트림의 각 요소를 기본 int 값으로 변환할 수 있는 mapToInt() 메서드를 제공합니다. List mapToInt()를 사용하여 int[]로 변환하려면 다음 단계를 따르세요.

import java.util.List;

class ListToIntArrayExample {

    public static void main(String[] args) {
        List<Integer> list = List.of(1, 2, 3, 4, 5);

        // Convert the list to an int[] using mapToInt()
        int[] intArray = list.stream()
                              .mapToInt(Integer::intValue)
                              .toArray();

        // Print the converted int[]
        for (int i : intArray) {
            System.out.println(i);
        }
    }
}
로그인 후 복사

이 예에서는 목록의 stream() 메서드를 사용하여 정수 스트림을 만듭니다. 그런 다음 단순히 각 요소의 정수 값을 반환하는 람다 식과 함께 mapToInt() 메서드를 적용합니다. 마지막으로 toArray()를 사용하여 스트림을 다시 int[]로 변환합니다.

2. Unboxing 사용

컴파일러는 mapToInt()의 람다 결과가 int 유형이어야 함을 알고 있으므로 int에 대한 명시적 캐스트를 생략하여 람다를 단순화할 수 있습니다.

...
int[] intArray = list.stream()
                      .mapToInt(i -> i)
                      .toArray();
...
로그인 후 복사
로그인 후 복사

3. 일반 유형 추론

컴파일러는 스트림의 일반 유형을 추론할 수 있으므로 람다에서 Integer 유형을 생략할 수 있습니다.

...
int[] intArray = list.stream()
                      .mapToInt(i -> i)
                      .toArray();
...
로그인 후 복사
로그인 후 복사

이러한 방법은 효율적이고 간단한 방법을 제공합니다. List를 변환하는 방법 Java에서는 int[]로 변환합니다.

위 내용은 Java에서 목록을 int[]로 효율적으로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿