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

Java程序开发求助:整数存入数组及数组模运算实现

解决Java数组存储整数与模运算的问题

看起来你已经有了不错的开头,我来帮你完善代码,搞定数组存储和模运算的问题,咱们一步步来:

首先,你的现有代码里只声明了数组int[] n;但没初始化它——数组必须指定长度才能存元素,所以得在读取完要输入的数字个数r之后,用new int[r]来初始化数组。之后通过循环逐个读取整数存入数组,最后遍历数组完成模运算就行。

下面是完整的修改后代码,我会在后面逐段解释细节:

public class Modulo { // 类名首字母大写是Java的编码规范哦
    public static void main(String[] args) {
        int counter = 0;
        int r = 0;
        int modus;
        int numbers;
        int[] n; // 先声明数组

        Out.print("How many numbers you want to calculate: ");
        r = In.readInt();
        n = new int[r]; // 初始化数组,长度为输入的数字个数r

        // 循环读取整数并存入数组
        for (int i = 0; i < r; i++) {
            Out.print("Enter number " + (i + 1) + ": ");
            numbers = In.readInt();
            n[i] = numbers; // 将读取的整数存入数组对应位置
        }

        // 读取用于模运算的除数
        Out.print("With what number do you want to calculate modulo? ");
        modus = In.readInt();

        // 遍历数组执行模运算并输出结果
        Out.println("\nModulo results:");
        for (int num : n) { // 增强for循环遍历数组,更简洁
            int result = num % modus;
            Out.println(num + " % " + modus + " = " + result);
        }
    }
}

关键部分拆解:

  • 数组初始化:在读取r(要处理的数字数量)之后,执行n = new int[r];,这样数组就拥有了r个元素的存储空间,每个元素初始值为0。
  • 存储整数到数组:用普通for循环遍历数组的每个索引(从0到r-1),每次读取用户输入的整数,赋值给n[i],就能把每个数依次存入数组对应位置。
  • 模运算实现:先读取用于取模的数modus,然后用增强for循环遍历数组中的每个元素,使用Java的%运算符执行模运算,最后逐个输出每个数的运算结果。

另外小提醒:Java的类名规范是首字母大写,所以我把modulo改成了Modulo,这样更符合行业编码习惯~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:09:44