Java 一维数组 查找数据 遇到的一点小问题

图片说明

 public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("输入");
        int n = sc.nextInt();
        int[] arr = { 1, 2, 3, 4 };
        for (int i = 0; i < arr.length; i++) {
            if (n == arr[i]) {
                System.out.println("位置" + i);
                break;                                  //break 跳出循环,发现匹配就跳出循环
            } else if (i == arr.length - 1) {           //循环到最后一个都没有,肯定就没有了
                System.out.println("没");
            }
        }
    }

只写关键部分





boolean exist = false;
for(int i=0;i<arr.length;i++){
if(n==arr[i]){
    System.ou.println("你所查找的数据位于数组中,且位于数组中的第"+(i+1)+"位");
    exist = true;
    break;//跳出循环
}
}
}
if(!exist){
System.out.println("不存在");
}

很简单,在判断存在的if中加入一个布尔值用来指定是否存在,最后判断布尔值来输出不存在。。

直接循环外打印不存在就完了啊,里面找到就return