6

I have the following problem: method readLine() or nextLine(), nextInt(), etc. throw an exception: NullPointerException.

I use the NetBeans IDE (if it matters).

public static void Reading()
{
    String qq;
    qq = System.console().readLine();
    System.console().printf(qq);
}
Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Maxim Gotovchits
  • 729
  • 3
  • 11
  • 22

2 Answers2

12

Some IDEs don't provide a console. Note that System.console() returns null in these cases.

From the documentanion

Returns:

     The system console, if any, otherwise null.

You can always use System.in and System.out instead, as follows:

String qq;
Scanner scanner = new Scanner(System.in);
qq = scanner.nextLine();
System.out.println(qq);
aioobe
  • 413,195
  • 112
  • 811
  • 826
0

Two things:

  1. The standard way of printing things is System.out.println("Thing to print");
  2. The standard way of reading input off the console is: Scanner s = new Scanner(System.in); String input = s.nextLine();

So with these in mind, your code should be

public static void Reading() {
    String qq;
    Scanner s = new Scanner(System.in);
    qq = s.nextLine();
    System.out.println(qq);
    s.close();
}

or

public static void Reading() {
    String qq;
    try (Scanner s = new Scanner(System.in)) {
        qq = s.nextLine();
        System.out.println(qq);
    }
}
Nathan Wood
  • 209
  • 2
  • 12
Mshnik
  • 7,032
  • 1
  • 25
  • 38