数组查找值,for循环中的if判断语句不可以加else,否则会冲突
**在键盘中任意输入一个数字,然后判断这个数再数组中是否存在,如果存在返回数组中该数的下标,如果不存在,返回-1;**
Scanner input = new Scanner(System.in);
System.out.println("请输入一个数字:");
boolean flag =false;
int num = input.nextInt();
int[] arr ={90,89,87,88,84,81,80};
for (int i=0;i<arr.length;i++){
if (num==arr[i]){
flag = true;
System.out.println(i);
break;
}
}
if (flag == false){
System.out.println(-1);
}
因为,在for循环中,先进行判断if条件语句,当判断完索引为的值以后,如果不是键盘输入对应的值,for循环会直接向下运行,不会以循环为主进行数组索引一一判断。所以要在for循环外再添加if判断语句进行判断。