我的代碼首先用100個元素生成數組,然後在每個元素中放置隨機生成的數字。我正在嘗試搜索一個數字,如果發現,打印出它的索引。我到目前爲止的代碼是:搜索數組中的數字java
import java.util.Scanner;
public class Lab01
{
public static void main(String[] args)
{
int[] nums = new int[100];
for (int i = 0; i < nums.length; i++)
{
nums[i] = (int)((Math.random() * 100) + 1);
System.out.print(nums[i] + " , ");
}
System.out.println();
Scanner input = new Scanner(System.in);
int num;
System.out.println("What number would you like to search for?");
num = input.nextInt();
boolean found = false;
for (int i = 0; i < nums.length; i++)
{
if (num == nums[i])
{
found = true;
break;
}
if (found)
{
System.out.println("That number was found at index" + i);
break;
}
else
{
System.out.println("That number was not found.");
break;
}
}
}
}
我把打印語句來查看值,所以我可以確認這是工作,但它總是返回「未找到」。我在這裏錯過了什麼?
您不能保證輸入數量等於**隨機**生成的數字。 – Atri
我建議創建一個隨機生成器:隨機隨機=新隨機(),並使用它的上限:'nums [i] = random.nextInt(100)+ 1'。 除此之外,當你使用它時關閉你的掃描儀:'input.close()'。 – Bifz