Java实现两数组相同下标元素相加的开发问题咨询
修复后可运行的完整实现代码
import java.util.Scanner; // 调整类名,避免和Java自带的java.lang.Math类冲突 public class ArrayCalculator { // 统一数组长度,对应位置相加要求两个数组长度必须一致 public static final int ARRAY_LENGTH = 5; public static void main(String[] args) { // 补充op变量声明,修复原代码编译错误 int op; System.out.println("欢迎使用本程序,支持以下功能:\n 1) 两组数字对应位置相加\n 2) 两组数字对应位置相减\n请输入你要使用的功能序号:"); Scanner keyboard = new Scanner(System.in); op = keyboard.nextInt(); if (op == 1) { System.out.println("****相加功能****\n请输入第一组数字:"); System.out.println("共需要输入" + ARRAY_LENGTH + "个数字"); int[] array1 = new int[ARRAY_LENGTH]; for (int i = 0; i < array1.length; i++) { System.out.println("输入第" + i + "个值:"); array1[i] = keyboard.nextInt(); } System.out.println("请输入第二组" + ARRAY_LENGTH + "个数字:"); int[] array2 = new int[ARRAY_LENGTH]; for (int i = 0; i < array2.length; i++) { System.out.println("输入第" + i + "个值:"); array2[i] = keyboard.nextInt(); } // 核心:对应位置相加逻辑 int[] sumResult = new int[ARRAY_LENGTH]; System.out.println("\n对应位置相加结果如下:"); for (int i = 0; i < ARRAY_LENGTH; i++) { sumResult[i] = array1[i] + array2[i]; System.out.printf("下标%d:%d + %d = %d%n", i, array1[i], array2[i], sumResult[i]); } } else if (op == 2) { // 减法逻辑可参考加法逻辑扩展,此处省略实现 System.out.println("减法功能可参考加法逻辑自行扩展实现"); } keyboard.close(); } }
核心修改说明
- 修复原代码
op变量未声明的编译问题 - 调整类名避免和Java标准库的Math类冲突
- 统一数组长度常量,确保两个待计算数组长度一致,符合对应位置相加的基础要求
- 新增对应位置相加的核心逻辑:遍历相同下标,取出两个数组的元素求和后存入结果数组
- 新增计算结果输出逻辑,直观展示每个位置的计算过程
- 补充Scanner资源关闭操作,避免资源泄漏
内容的提问来源于stack exchange,提问作者OdinsGrim
相关产品推荐
相关产品推荐

