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

Java数组元素搜索程序重复输出问题求助

Java数组查找重复输出“未找到”问题修复

问题原因

你的代码逻辑存在缺陷:在for循环的else分支中直接输出“未找到”提示,每遍历到一个不匹配的元素就会打印一次,导致找到目标前重复出现多余提示。正确逻辑应该是:遍历完所有元素后,确认未找到目标时再输出一次提示。

修复方案

  1. 新增布尔变量标记是否找到目标
  2. 循环内仅处理“找到目标”的场景,更新标记并跳出循环
  3. 循环结束后根据标记判断是否输出“未找到”提示

修正后的代码

int[] array = new int[10];
array[0] = 6;
array[1] = 2;
array[2] = 8;
array[3] = 1;
array[4] = 3;
array[5] = 0;
array[6] = 9;
array[7] = 7;

System.out.print("Search for? ");
int searching = in.nextInt();

// 标记是否找到目标元素
boolean found = false;
for(int i=0; i<array.length; i++){
    if(searching == array[i]){
        System.out.println(searching + " is at index " + i + ".");
        found = true;
        break;
    }
}
// 遍历结束后统一判断是否未找到
if(!found){
    System.out.println(searching + " was not found.");
}

效果验证

  • 查找存在的数字(如1),输出符合预期:
Search for? 1
1 is at index 3.
  • 查找不存在的数字(如5),仅输出一次提示:
Search for? 5
5 was not found.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 09:50:36