需求:已知一个数组arr={19,28,37,46,50);键盘录入一个数据,查找该数据在数组中的索引,并在控制台输出找到的索引值。
分析及代码如下:
键盘录入一个数据后,让这个数据和数组中的每一个元素进行比较,如果数据值相等,返回该数据值对应的索引。但是,假如录入了一个数组中不存在的数据,这个时候,就没有任何内容输出了,所以返回一个负数,用-1来表示。
public static void main(String[] args) {
// 定义一个数组,用静态初始化完成数组元素的初始化
int[] arr = {19, 28, 37, 46, 50};
//键盘录入要查找的数据,用一个变量接收
Scanner sc = new Scanner(System.in);
System.out.println("输入要查找的数");
int num = sc.nextInt();
//定义一个索引变量,初始值为-1,假设输入的数据在数组中不存在,初始值为-1
int index = -1;
//遍历数组,获取到数组中的每一个元素拿键盘录入的数据和数组中的每一个元素进行比较,
// 如果值相同,就把该值对应的索引赋值给索引变量,并结束循环
for (int i = 0; i < arr.length; i++) {
if (arr[i] == num) {
index = i;
break;
}
}
//输出索引变量
System.out.println(index);
}