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

Java中如何一行打印包含int数组的List内容?

实现List<int[]>的自定义格式输出

刚好碰到过类似的需求,给你两种可行的实现方式,都能输出你想要的{[0,1],[2,3]}格式:

方法一:用Java 8+ Stream API(推荐)

Stream API可以让代码更简洁,一行搞定格式拼接:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<int[]> outputList = new ArrayList<>();
        int[] result = new int[]{0, 1};
        int[] result2 = new int[]{2, 3};
        outputList.add(result);
        outputList.add(result2);
        
        // 核心逻辑:把每个数组转成字符串,再拼接成目标格式
        String formattedOutput = outputList.stream()
                .map(Arrays::toString) // 将每个int[]转为"[x,y]"格式的字符串
                .collect(Collectors.joining(",", "{", "}")); // 用逗号连接,首尾加{}
        
        System.out.println(formattedOutput); // 输出:{[0,1],[2,3]}
    }
}

方法二:手动拼接字符串(兼容Java 8之前版本)

如果你的项目还在使用Java 8以下的版本,可以用StringBuilder手动构建目标字符串:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<int[]> outputList = new ArrayList<>();
        int[] result = new int[]{0, 1};
        int[] result2 = new int[]{2, 3};
        outputList.add(result);
        outputList.add(result2);
        
        StringBuilder sb = new StringBuilder("{");
        for (int i = 0; i < outputList.size(); i++) {
            sb.append(Arrays.toString(outputList.get(i)));
            // 最后一个元素后面不加逗号
            if (i != outputList.size() - 1) {
                sb.append(",");
            }
        }
        sb.append("}");
        
        System.out.println(sb.toString()); // 输出:{[0,1],[2,3]}
    }
}

两种方法的核心思路都是:先把List中的每个int[]数组转换成[x,y]格式的字符串,再把这些字符串用逗号连接,最后在前后加上大括号,就能得到你想要的输出格式了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 17:57:27