首页 新闻 会员 周边

java,高效优雅的将Integer[]转换int[]?

0
[已解决问题] 解决于 2019-07-31 17:29

主要是Integer[]中包含null值,null值可以指定默认值(也可以默认0)。

(最基本的做法,遍历...)

Integer[] integers = {1, 2, 3, null, 4, 5, null, 6};
int length = array.length;
int[] ary = new int[length];
for(int i = 0; i < length; i ++){
    ary[i] = array[i] == null ? 0 : array[i];
}
淡丶无欲的主页 淡丶无欲 | 初学一级 | 园豆:87
提问于:2019-06-28 16:39
< >
分享
最佳答案
0
奖励园豆:5
dudu | 高人七级 |园豆:31003 | 2019-06-28 20:43
 1     public static int[] toPrimitive(final Integer[] array) {
 2         if (array == null) {
 3             return null;
 4         } else if (array.length == 0) {
 5             return EMPTY_INT_ARRAY;
 6         }
 7         final int[] result = new int[array.length];
 8         for (int i = 0; i < array.length; i++) {
 9             result[i] = array[i].intValue();
10         }
11         return result;
12     }

commons-lang3:3.5

不是黑科技,木有处理null元素。

(还是自己重写算了,木有找到黑科技....)

淡丶无欲 | 园豆:87 (初学一级) | 2019-07-31 17:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册