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

Android Studio中如何将数组存入ArrayList?临时存储多值对方案问询

解决Android Studio中存储值组到ArrayList的问题

嘿,我来帮你搞定这个需求!首先先指出你代码里的一个小语法错误——直接写[1,2,3,4]是不行的,Java里得用new int[]{...}来创建数组实例。

方法一:用int数组存入ArrayList

这是你最初设想的方式,修正语法后就能正常工作了,完整代码示例如下:

// 初始化ArrayList,存储int类型数组
ArrayList<int[]> list = new ArrayList<>();
// 正确添加数组的方式:用new int[]创建数组实例
list.add(new int[]{1,2,3,4});
list.add(new int[]{5,6,7,8});
list.add(new int[]{10,15,-58,39});

传递到其他方法并访问

当你把这个ArrayList传递给另一个方法时,可以这样访问每组的四个值:

// 定义接收ArrayList的方法
public void processValueGroups(ArrayList<int[]> valueGroups) {
    for (int[] group : valueGroups) {
        // 访问每组的四个值,索引从0到3
        int val1 = group[0];
        int val2 = group[1];
        int val3 = group[2];
        int val4 = group[3];
        // 这里做你需要的处理,比如打印或者业务逻辑
        System.out.println("组值:" + val1 + ", " + val2 + ", " + val3 + ", " + val4);
    }
}

// 调用方法
processValueGroups(list);

方法二:用自定义数据类(更推荐)

虽然用数组能满足需求,但如果这四个值有明确的业务含义(比如对应你提到的searchClause、selecArgs相关参数?),用自定义类封装会更清晰,可读性和可维护性都更强,不会因为记混索引而出错。

第一步:创建自定义数据类

// 你可以根据实际业务场景给字段起更有意义的名字
public class ValueGroup {
    private int param1;
    private int param2;
    private int param3;
    private int param4;

    // 构造函数
    public ValueGroup(int param1, int param2, int param3, int param4) {
        this.param1 = param1;
        this.param2 = param2;
        this.param3 = param3;
        this.param4 = param4;
    }

    // 如果需要外部访问字段,添加getter方法
    public int getParam1() {
        return param1;
    }

    public int getParam2() {
        return param2;
    }

    // 其他字段的getter同理...
}

第二步:存入ArrayList并传递访问

// 初始化存储自定义类的ArrayList
ArrayList<ValueGroup> customList = new ArrayList<>();
// 添加实例
customList.add(new ValueGroup(1,2,3,4));
customList.add(new ValueGroup(5,6,7,8));
customList.add(new ValueGroup(10,15,-58,39));

// 接收并处理的方法
public void processCustomValueGroups(ArrayList<ValueGroup> valueGroups) {
    for (ValueGroup group : valueGroups) {
        // 通过getter访问,语义更清晰,不会搞混顺序
        int param1 = group.getParam1();
        int param2 = group.getParam2();
        // 这里执行你的业务逻辑...
    }
}

// 调用方法
processCustomValueGroups(customList);

这两种方式都不需要数据库,完全是内存中的临时存储,非常适合你传递给其他方法的需求。如果四个值没有特别的业务含义,用数组就够;如果有明确含义,自定义类会让代码更健壮、更易维护。

内容的提问来源于stack exchange,提问作者Peter B

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:26:16