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

Java数组判断函数报错求助:arrayDoesNotContain断言错误排查

数组包含判断逻辑错误排查

需求说明:当数组arr不包含目标值target时返回true,否则返回false。

用户实现的Java代码:

public boolean arrayDoesNotContain(int[] arr, int target){
    for (int element : arr) {
        if (element != target) {
            return true;
        } 
    }
    return false;
}

问题分析

你的代码逻辑完全错误,核心问题在于提前返回的条件搞反了:

  • 循环中只要遇到第一个不等于target的元素就直接返回true,这和需求完全相悖。比如数组[1,2,3]、目标值2的场景,第一个元素是1不等于2,代码直接返回true,但实际上数组包含2,应该返回false。
  • 只有当数组**所有元素都等于target**时,代码才会返回false,这完全不符合需求定义。

正确实现

正确逻辑是:遍历数组时,只要找到等于target的元素,就立即返回false(因为需求是包含目标值则返回false);遍历完整个数组都没找到目标值,再返回true。

public boolean arrayDoesNotContain(int[] arr, int target){
    for (int element : arr) {
        if (element == target) {
            return false;
        } 
    }
    return true;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 00:22:02