0

I am very new to Java. I am trying this code. I want to input a series of integers into an array and get them printed both forwards and backwards. But I get the error

I am getting the following error

    Size of array?
    Exception in thread "main" java.util.NoSuchElementException
    at java.base/java.util.Scanner.throwFor(Scanner.java:937)
    at java.base/java.util.Scanner.next(Scanner.java:1594)
    at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
    at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
    at LoadIntegerArray.getInteger(LoadIntegerArray.java:15)
    at LoadIntegerArray.main(LoadIntegerArray.java:25)

The code I am using is :

   import java.util.Scanner;

   public class LoadIntegerArray
    {
    static int getInteger(Scanner sc, String prompt)
    {
        System.out.print( prompt);
        return sc.nextInt();
    }   
    static void getIntegers(Scanner sc, int [] arr)
      {
      for (int i = 0; i < arr.length; i++)
             arr[i] = getInteger(sc, "Element " + i + ": ");
        }
 public static void main(String args[])
   { 
    Scanner keyboard = new Scanner(System.in);
    int extent = getInteger(keyboard, "Size of array? ");
    int[] testArray = new int[extent];
    getIntegers(keyboard, testArray);
    System.out.println("\nForwards: ");
        for (int i = 0; i < testArray.length; i++)
            System.out.println("testArray[" +i+ "]: " + testArray[i]);
            System.out.println("\nBackwards: ");
        for (int i = testArray.length - 1; i >= 0; i--)
            System.out.println("testArray[" +i+ "]: " + testArray[i]);
            System.out.println("\nFor-each: ");
        for (int value: testArray)
            System.out.println(value);
   }
   }

0 Answers0