Liste dönüştürmek için nasıl<Tamsayı> int[] Java?
Bu soruya benzer: http://stackoverflow.com/questions/880581/java-convert-int-to-integer
Java yeniyim. Nasıl int için bir Liste dönüştürebilirsiniz[] Java? Liste çünkü kafam karıştı.Tamsayı nether çevirebilirsiniz) toArray bir Nesne döndürür aslında [], [] veya int[].
Şimdi bunu yapmak için bir döngü kullanarak ediyorum:
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;
}
Bunu yapmanın daha iyi bir yolu yoktur eminim.
CEVAP
Bunu yapmanın en kolay yolu Apache Commons Lang kullanımı sağlamaktır. İstediğinizi yapabilirsiniz Bu kullanışlı ArrayUtils sınıfı vardır. Integer
s dizisi için aşırı yük ile toPrimitive
yöntemi kullanın.
List<Integer> myList;
... assign and fill the list
int[] intArray = ArrayUtils.toPrimitive(myList.toArray(new Integer[myList.size()]));
Bu şekilde tekerleği yeniden icat yok. Commons Lang Java terk eden pek çok yararlı şeyler vardır. Yukarıda, doğru boyutta bir Tamsayı listesi oluşturmak için seçtim. Ayrıca 0-uzunluğu statik Tamsayı bir dizi kullanmak ve Java sağ boyutu: bir dizi tahsis etmek izin verebilirsiniz
static final Integer[] NO_INTS = new Integer[0];
....
int[] intArray2 = ArrayUtils.toPrimitive(myList.toArray(NO_INTS));
İnt dönüştürmek için nasıl [List]<T...
İnt dönüştürmek için [nasıl] Tamsayı i...
Nasıl bir scala dönüştürmek için.Bir j...
Java nasıl bir dize bir karakter dönüş...
Java nasıl yeni bir Liste yapmak için...