You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用一行代码将Java中的Integer ArrayList转换为int数组

将Integer类型ArrayList转换为int数组(Java)

这里提供几种实用的转换方法,针对你的示例代码实现需求:

方法1:Java 8+ Stream流(推荐简洁写法)

利用Stream API可以快速完成转换,代码简洁高效:

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        ArrayList<Integer> arrlist = new ArrayList<>(5);  
        arrlist.add(10);  
        arrlist.add(20);  
        arrlist.add(30);  
        arrlist.add(40);
        
        // 转换为int数组
        int[] intArray = arrlist.stream().mapToInt(Integer::intValue).toArray();
        
        // 打印期望格式的结果
        System.out.print("[");
        for (int i = 0; i < intArray.length; i++) {
            System.out.print(intArray[i]);
            if (i != intArray.length - 1) {
                System.out.print(", ");
            }
        }
        System.out.println("]");
    }
}

运行后输出:

[10, 20, 30, 40]

方法2:手动遍历转换(兼容低版本Java)

如果你的项目使用Java 8之前的版本,可以手动拆箱赋值:

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        ArrayList<Integer> arrlist = new ArrayList<>(5);  
        arrlist.add(10);  
        arrlist.add(20);  
        arrlist.add(30);  
        arrlist.add(40);
        
        // 创建对应长度的int数组
        int[] intArray = new int[arrlist.size()];
        // 遍历赋值,Integer自动拆箱为int
        for (int i = 0; i < arrlist.size(); i++) {
            intArray[i] = arrlist.get(i);
        }
        
        // 打印期望格式的结果
        System.out.print("[");
        for (int i = 0; i < intArray.length; i++) {
            System.out.print(intArray[i]);
            if (i != intArray.length - 1) {
                System.out.print(", ");
            }
        }
        System.out.println("]");
    }
}

方法3:使用第三方工具类(Apache Commons Lang)

如果项目中已经引入Apache Commons Lang库,可以用ArrayUtils简化操作:

import java.util.ArrayList;
import org.apache.commons.lang3.ArrayUtils;

public class Main {
    public static void main(String[] args) {
        ArrayList<Integer> arrlist = new ArrayList<>(5);  
        arrlist.add(10);  
        arrlist.add(20);  
        arrlist.add(30);  
        arrlist.add(40);
        
        // 转换为int数组
        int[] intArray = ArrayUtils.toPrimitive(arrlist.toArray(new Integer[0]));
        
        // 打印期望格式的结果
        System.out.print("[");
        for (int i = 0; i < intArray.length; i++) {
            System.out.print(intArray[i]);
            if (i != intArray.length - 1) {
                System.out.print(", ");
            }
        }
        System.out.println("]");
    }
}

注意:需要确保项目中已引入Apache Commons Lang的依赖包。


内容的提问来源于stack exchange,提问作者sadu-sadd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 13:22:13