Java Data Type How to - Read double value from console and check the format








Question

We would like to know how to read double value from console and check the format.

Answer

//from   w ww  .  j a v  a 2 s. c  o m
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {
  public static void main(String args[]) throws Exception {
    InputStreamReader isr = new InputStreamReader(System.in);
    BufferedReader br = new BufferedReader(isr);

    while (true) {
      System.out.print("Radius? ");
      String str = br.readLine();
      double radius;
      try {
        radius = Double.valueOf(str).doubleValue();
      } catch (NumberFormatException nfe) {
        System.out.println("Incorrect format!");
        continue;
      }
      if (radius <= 0) {
        System.out.println("Radius must be positive!");
        continue;
      }
      System.out.println("radius " + radius);
      return;
    }
  }
}

The code above generates the following result.