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

Java中如何仅打印ArrayList内指定数量的元素?

现有代码问题分析

  • 第一个while循环存在逻辑错误:进入循环的条件是i < 14,而循环体内第一行判断就是if (i < 14),会直接触发break跳出循环,永远无法执行后面的打印逻辑。同时内部增强for循环的索引自增和取值逻辑也存在顺序错误,会先自增再取值,既会跳过索引0的元素,运行到最后还会出现索引越界问题。
  • 第二个for循环存在两个问题:一是打印语句结尾缺少英文分号,编译无法通过;二是没有做ArrayList长度判断,当列表实际元素个数小于14时会触发IndexOutOfBoundsException索引越界异常。

正确实现方式

如果需要打印ArrayList前N个指定数量的元素,这里以打印前14个为例,可以参考下面的写法:

// 指定需要打印的元素数量
int printCount = 14;
// 实际打印数量取指定数量和列表长度的较小值,避免索引越界
int actualCount = Math.min(printCount, arraylist.size());
for (int i = 0; i < actualCount; i++) {
    System.out.print(arraylist.get(i));
}

如果需要打印的不是前N个,是指定索引范围的元素,比如从索引2到索引15的元素,可以按下面的写法调整:

// 起始索引(包含)
int startIndex = 2;
// 结束索引(包含)
int endIndex = 15;
// 先做索引合法性校验,避免异常
if (startIndex >= 0 && endIndex < arraylist.size() && startIndex <= endIndex) {
    for (int i = startIndex; i <= endIndex; i++) {
        System.out.print(arraylist.get(i));
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 13:57:03