整数を配列に入力するときに、整数が配列の長さよりも大きい場合、範囲外の例外がスローされることに気付きました。どうしてこれなの?配列が整数値を受け入れないのはなぜですか? 配列の長さよりも大きい整数を格納する必要がある場合、これを修正するにはどうすればよいですか。
ありがとうございました!
これがコードです。5 より大きい整数を入力すると、範囲外の例外が発生します。5 未満の整数を入力すると、コードは完全に機能します。
public class NumOfOccur
{
static Scanner input = new Scanner(System.in);
static int[] cards = new int[5];
static int[] numOccurence = new int[5];
public static void main(String[] args)
{
System.out.println("Enter five values: ");
for (int i = 0; i < 5; i++)
{
System.out.print("Card " + (i + 1) + " : ");
cards[i] = input.nextInt();
}
containsPair(cards);
}
public static boolean containsPair(int hand[])
{
for (int i = 0; i < hand.length; i++)
numOccurence[hand[i]]++;
for (int i = 1; i < numOccurence.length; i++)
{
if (numOccurence[i] > 0)
System.out.println("The number " + i + " occurs " + numOccurence[i] + " times.");
}
return false;
}
}