728x90
반응형
질문 : 목록을 변환하는 방법 자바에서 int []로?
이것은 다음 질문과 유사합니다. Java에서 int []를 Integer []로 변환하는 방법?
저는 Java를 처음 사용합니다. Java에서 List<Integer>
를 int[]
로 어떻게 변환 할 수 있습니까? List.toArray()
실제로 Object[]
반환하기 때문에 혼란 스럽습니다. 이는 Integer[]
또는 int[]
로 캐스트 될 수 있습니다.
지금은 루프를 사용하고 있습니다.
int[] toIntArray(List<Integer> list){
int[] ret = new int[list.size()];
for(int i = 0;i < ret.length;i++)
ret[i] = list.get(i);
return ret;
}
이 작업을 수행하는 더 좋은 방법이 있다고 확신합니다.
답변
불행하게도, 정말 기본 유형, 권투, 배열 및 제네릭 자바의 처리의 성격이 때문에 일을 더 나은 방법이 생각하지 않습니다. 특히:
Integer
에서int
로의 변환이 없기 때문에List<T>.toArray
- 당신은 사용할 수 없습니다
int
그것이 될 것이다, 그래서 제네릭 형식 인수로int
- 특정 방법 (또는 더러운 속임수를 수행하는 데 사용되는 반사 하나).
모든 기본 유형에 대해 이러한 종류의 메서드를 자동 생성 한 라이브러리가 있다고 생각합니다 (즉, 각 유형에 대해 복사되는 템플릿이 있습니다). 추악하지만 그게 두렵습니다 :(
Arrays
클래스가 나왔지만 오늘 도입 된 경우 (기본 배열을 사용하려는 경우) 모든 끔찍한 오버로드를 포함해야합니다.
출처 : https://stackoverflow.com/questions/960431/how-to-convert-listinteger-to-int-in-java
728x90
반응형
'프로그래밍 언어 > JAVA' 카테고리의 다른 글
Java에서 SuppressWarnings ( "unchecked")의 의미 (0) | 2021.08.27 |
---|---|
JS 객체를 JSON 문자열로 변환 (0) | 2021.08.25 |
java.util.Date를 java.sql.Date로 변환하는 방법 (0) | 2021.08.20 |
DEX를 Java 소스 코드로 디컴파일 (0) | 2021.08.20 |
Java에서 String을 long으로 변환하는 방법 (0) | 2021.08.12 |