Scanner nextBigInteger() in Java

nextBigInteger(): This method is available in java.util.Scanner class of Java.

Syntax:

BigInteger java.util.Scanner.nextBigInteger()

This method scans the next token of the input as a BigInteger.

Parameters: NA

Returns: the BigInteger scanned from the input.

Throws:

1. InputMismatchException - if the next token does not match the Integer regular expression, or is out of range.

2. NoSuchElementException - if the input is exhausted.

3. IllegalStateException - if this scanner is closed

Approach 1: When no exception

Java

import java.util.Scanner;

public class ScannernextBigInteger {
    public static void main(String[] args) {

        String source = "1234 Hello World";
        Scanner scanner = new Scanner(source);

        System.out.println(scanner.nextBigInteger());

        scanner.close();
    }
}

Output:

1234


Approach 2: InputMismatchException 

Java

import java.util.Scanner;

public class ScannernextBigInteger {
    public static void main(String[] args) {

        String source = "Hello World";
        Scanner scanner = new Scanner(source);

        System.out.println(scanner.nextBigInteger());

        scanner.close();
    }
}

Output:

Exception in thread "main" java.util.InputMismatchException at java.base/java.util.Scanner.throwFor(Scanner.java:939) at java.base/java.util.Scanner.next(Scanner.java:1594) at java.base/java.util.Scanner.nextBigInteger(Scanner.java:2677) at java.base/java.util.Scanner.nextBigInteger(Scanner.java:2636)



Approach 3: NoSuchElementException

Java

import java.util.Scanner;

public class ScannernextBigInteger {
    public static void main(String[] args) {

        String source = "";
        Scanner scanner = new Scanner(source);

        System.out.println(scanner.nextBigInteger());

        scanner.close();
    }
}

Output:

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.nextBigInteger(Scanner.java:2677) at java.base/java.util.Scanner.nextBigInteger(Scanner.java:2636)



Approach 4: IllegalStateException 

Java

import java.util.Scanner;

public class ScannernextBigInteger {
    public static void main(String[] args) {

        String source = "1234 Hello World";
        Scanner scanner = new Scanner(source);

        scanner.close();
        System.out.println(scanner.nextBigInteger());

    }
}

Output:

Exception in thread "main" java.lang.IllegalStateException: Scanner closed at java.base/java.util.Scanner.ensureOpen(Scanner.java:1150) at java.base/java.util.Scanner.next(Scanner.java:1573) at java.base/java.util.Scanner.nextBigInteger(Scanner.java:2677) at java.base/java.util.Scanner.nextBigInteger(Scanner.java:2636)


No comments:

Post a Comment