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

Java实现用户输入数组元素相乘的方法求助

解决数组元素乘积计算的问题

嘿,你已经完成了数组输入的核心部分,做得不错!要计算数组元素的乘积其实很直观,我来帮你把这部分功能补上~

关键思路

计算乘积的核心步骤很简单:

  • 先初始化一个乘积变量,注意要设为1(因为乘法的单位元是1,如果设为0的话,最终结果永远是0,这是新手常踩的坑)
  • 遍历你已经输入好的数组,把每个元素依次乘到这个乘积变量上
  • 最后输出计算好的乘积

修正后的完整代码

我把你的代码补充完整,还加上了必要的导入语句,修正了语法小问题:

import java.util.Scanner;
import java.util.Arrays;

public class ArrayMultiplication {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("The length of your array is: ");
        int length = s.nextInt();
        int[] myArray = new int[length];
        
        System.out.println("The elements of your array are: ");
        for(int i = 0; i < length; i++) {
            myArray[i] = s.nextInt();
        }
        
        // 计算乘积的核心代码
        int product = 1;
        for (int num : myArray) {
            product *= num;
        }
        
        System.out.printf("The multiplication of %s is %d", Arrays.toString(myArray), product);
        s.close(); // 记得关闭Scanner资源哦
    }
}

补充说明

  • 我用了增强for循环(for (int num : myArray))来遍历数组,比普通for循环更简洁,当然你也可以用原来的for(int i=0; i<length; i++)的写法,效果一样:product *= myArray[i];
  • 如果需要处理数组长度为0的情况(用户输入0),可以加个判断:如果length == 0,输出提示或者把乘积设为0(根据你的需求来),避免结果为1的不符合预期的情况
  • 记得用完Scanner后调用s.close()释放资源,这是良好的编程习惯

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 18:52:48