Java
 Computer >> コンピューター >  >> プログラミング >> Java

文字列がJavaでdoubleに解析可能であることを確認するにはどうすればよいですか?


parseDouble()メソッドの使用

parseDouble() java.lang.Doubleのメソッド クラスは文字列値を受け取り、それを解析して、指定された文字列のdouble値を返します。

このメソッドにnull値を渡すと、NullPointerExceptionがスローされ、このメソッドが指定された文字列をdouble値に解析できない場合は、NumberFormatExceptionがスローされます。

したがって、特定の文字列が解析可能であるかどうかを知るには、それをparseDoubleメソッドに渡し、この行をtry-catchブロックでラップします。例外が発生した場合、これは、指定された文字列が2倍にできないことを示します。

import java.util.Scanner;
public class ParsableToDouble {
   public static void main(String args[]) {
      try {
         Scanner sc = new Scanner(System.in);
         System.out.println("Enter a string value: ");
         String str = sc.next();
         Double doub = Double.parseDouble(str);
         System.out.println("Value of the variable: "+doub);
      }catch (NumberFormatException ex) {
         System.out.println("Given String is not parsable to double");
      }
   }
}

出力

Enter a string value:
2245g
Given String is not parsable to double

valueOf()メソッドの使用

同様に、 valueOf() Doubleクラスのメソッドは(また)パラメーターとしてString値を受け入れ、余分なスペースをトリミングして、文字列で表されるdouble値を返します。指定された値が2倍に解析できない場合、このメソッドはNumberFormatExceptionをスローします。

import java.util.Scanner;
public class ParsableToDouble {
   public static void main(String args[]) {
      try {
         Scanner sc = new Scanner(System.in);
         System.out.println("Enter a string value: ");
         String str = sc.next();
         Double doub = Double.valueOf(str);
         System.out.println("Value of the variable: "+doub);
      }catch (NumberFormatException ex) {
         System.out.println("Given String is not parsable to double");
      }
   }
}

出力

Enter a string value:
2245g
Given String is not parsable to double

Doubleクラスのコンストラクターを使用する

Doubleクラスのコンストラクターの1つは、パラメーターとしてStringを受け入れ、指定された値をラップする(Double)オブジェクトを作成します。このコンストラクターに渡された文字列がDoubleに解析できない場合、NumberFormatExceptionがスローされます。

import java.util.Scanner;
public class ParsableToDouble {
   public static void main(String args[]) {
      try {
         Scanner sc = new Scanner(System.in);
         System.out.println("Enter a string value: ");
         String str = sc.next();
         Double doub = new Double(str);
         System.out.println("Value of the variable: "+doub);
      }catch (NumberFormatException ex) {
         System.out.println("Given String is not parsable to double");
      }
   }
}

出力

Enter a string value:
2245g
Given String is not parsable to double

  1. ファイルまたはディレクトリがJavaに存在するかどうかを確認する方法

    Javaでは、ファイルまたはディレクトリが存在するかどうかを確認する主な方法が2つあります。これらは次のとおりです。 1-Files.exists NIOパッケージから 2-File.exists 従来のIOパッケージから 各パッケージの例をいくつか見てみましょう。 ファイルが存在するかどうかを確認する(Java NIO) コードはPathを使用します およびPaths Java NIOパッケージから、ファイルが存在するかどうかを確認します。 import java.nio.file.Files; import java.nio.file.Path; import java.nio.f

  2. Javaで文字列を比較する方法

    文字列が等しいかどうかを比較するには、Stringオブジェクトのequalsを使用する必要があります またはequalsIgnoreCase メソッド。 ==を使用すべきでない理由もわかります 文字列を比較する演算子。 文字列とequals()メソッドの比較 Javaで2つの文字列を比較する必要があり、文字列の大文字と小文字も気にする必要がある場合は、equals()を使用できます。 メソッド。 たとえば、次のスニペットは、文字列の2つのインスタンスが大文字小文字を含むすべての文字で等しいかどうかを判断します。 public class CompareTwoStrings { p