/*
目的:继续练习对数组的操作,练习在数组中进行指定元素的查找;
需求:设计一个查找函数,找出数组的指定元素第一次出现的位置;
思路:利用循环遍历比较数组中的每一个元素,直到找到该元素,并返回元素的位置值;
步骤:定义一个随机数组,产生一个长度为20的随机数组;
利用for的循环,遍历数组的每一个元素;
将指定的数字与数组中的每一个元素进行对比,直到直到找到该元素,并返回该元素的地址;
如果元素不存在,则返回-1;
*/
import java.util.Scanner;
public class FindIndex
{
public static void main(String[] args)
{
System.out.println("请输入数组的长度:");
int n;
n = inputInt();
int[] arr = new int[n];
arr = productArray(n);
printArray(arr);
newline(1);
System.out.println("请输入您想查找的数字:"+223);
//int key = inputInt();
int key = 223;
int x = findIndex(arr,key);
if(x!=-1)
System.out.println("该数字的位置为 "+x);
else
System.out.println("该数字不存在!");
}
public static int findIndex(int[] arr,int key)
{
for (int x= 0;x < arr.length ;x++ )
{
if (arr[x] == key)
return x;
}
return -1;
}
public static int[] productArray(int n)
{
int[] arr = new int[n];
for (int x = 0;x <n ;x++ )
{
arr[x] = (int)(Math.random()*1000);
}
return arr;
}
public static int inputInt()
{
Scanner in = new Scanner(System.in);
int num = in.nextInt();
in.close();
return num;
}
public static void printArray(int[] arr)
{
System.out.print("[ ");
for (int x = 0;x < arr.length ;x++ )
{
if (x<arr.length-1)
System.out.print(arr[x]+" ");
else
System.out.print(arr[x]+" ]");
}
}
public static void newline(int nh)
{
do
{
System.out.println();
nh--;
}
while (nh > 1);
}
}
/*
运行结果:
请输入数组的长度:2000
请输入您想查找的数字:223
该数字的位置为 29
*/
Java学习_FindIndex
最新推荐文章于 2022-07-28 11:01:15 发布