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

Java中调用ArrayList.size()获取元素数量无输出问题

问题解决:输入空串后未输出ArrayList元素数量

嘿,我一眼就发现问题啦!你的程序逻辑没问题,只是调用了CountItems方法后,没有把它的返回值打印出来,所以控制台只显示了提示文本,看不到实际的元素数量。

问题出在哪?

在main方法的最后,你写了:

CountItems(Names);

这个方法确实正确返回了ArrayList的元素个数,但你没有用System.out.println()把这个结果输出到控制台,相当于计算出了数值却没展示出来。

修改方案

只需要把这一行改成打印返回值的形式就行,有两种写法:

写法1:直接打印方法返回值

// 把返回的数量直接打印出来
System.out.println(CountItems(Names));

写法2:简化代码(可选)

其实你的CountItems方法只是简单返回list.size(),完全可以省去这个方法,直接打印列表的size:

System.out.println(Names.size());

修改后的完整代码

如果保留CountItems方法,完整代码如下:

import java.util.ArrayList;
import java.util.Scanner;
public class ArrayCounter {
    public static int CountItems(ArrayList<String> list ) {
        int i = list.size();
        return i;
    }
    public static void main (String args[]) {
        ArrayList<String> Names = new ArrayList<String>();
        Scanner input = new Scanner(System.in);
        while(true) {
            System.out.println("Hey gimme a word");
            String word = input.nextLine();
            if (word.equals("")) {
                System.out.println("The number of values entered were:");
                break;
            } else {
                Names.add(word);
            }
        }
        // 这里修改为打印方法返回值
        System.out.println(CountItems(Names));
        input.close();
    }
}

这样修改后,当你输入空串时,控制台就会先打印提示文本,接着输出你之前录入的单词数量啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 07:10:43