ゲーマーときどきエンジニア

基本ゲーム記事を書いて、ときどき考えを発信するエンジニアのブログです!

【Java】String型をdouble型に変換するparseDoubleメソッドについて解説します

こんにちは。たいら(@tairaengineer2)です。

この記事では、 JavaString型double型に変換できるparseDoubleメソッドついて解説します。

スポンサーリンク

 

前提条件

この記事では、eclipseのバージョンは

バージョン Eclipse4.7 Oxygen

を使っています。
インストールの仕方は、下の記事をご参考ください。

www.tairax.com

eclipseでのJavaプロジェクト作成方法は、以下の記事をご参考ください。

www.tairax.com

eclipseでのJavaファイル作成方法は、以下の記事をご参考ください。

www.tairax.com

parseDoubleメソッドとは

parseDoubleメソッドとは、引数で与えた文字列をdouble型に変換するメソッドです。

public static double parseDouble(String s)
throws NumberFormatException
DoubleクラスのvalueOfメソッドを実行した場合と同様に、指定されたStringが表す値に初期化された新しいdouble値を返します。

Double (Java Platform SE 8)から引用させて頂きました

parseDoubleメソッドはstaticなので、使いたい場合は

Double.parseDouble("変換したい文字列")

というように使います。

もしdouble型に変換出来なかった場合、例外を投げます。
投げる例外は以下になっています。

NullPointerException 引数で与えられた文字列がnullである
NumberFormatException 引数で与えられた文字列がdouble型に変換できない

では、次の章で実際に使ってみます。

  • parseDoubleメソッドで正常に変換できる場合
  • parseDoubleメソッドで異常終了する場合

の2種類のケースで使います。

サンプル1:parseDoubleメソッドで正常に変換できる場合

この章では、parseDoubleメソッドで正常に変換するサンプルプログラムを紹介します。
プログラムの内容としては、parseDoubleメソッドでString型の数字を変換し、表示させるだけのプログラムです。

Javaサンプルプログラム

package sample;

public class ParseDoubleSample {

	/***
	 * parseDoubleサンプルプログラム(成功)
	 * @param args
	 */
	public static void main(String[] args) {
		// double型に変換し、表示
		double parseSampleSuccess = Double.parseDouble("7888");
		System.out.println("parseSampleSuccess:" + parseSampleSuccess);
	}
}

実行結果

f:id:Tairax:20200217204354p:plain

parseSampleSuccess:7888.0

double型に変換できました!

サンプル2:parseDoubleメソッドで異常終了する場合

この章では、parseDoubleメソッドで異常終了するサンプルプログラムを紹介します。
プログラムの内容としては、parseDoubleメソッドでString型の文字列を変換し、表示させるだけのプログラムです。

Javaサンプルプログラム

package sample;

public class ParseDoubleSample {

	/***
	 * parseDoubleサンプルプログラム(失敗)
	 * @param args
	 */
	public static void main(String[] args) {
		// double型に変換し、表示
		double parseSampleFalse = Double.parseDouble("miss");
		System.out.println("parseSampleFalse:" + parseSampleFalse);
	}
}

実行結果

f:id:Tairax:20200217204737p:plain

Exception in thread "main" java.lang.NumberFormatException: For input string: "miss"
	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2043)
	at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
	at java.lang.Double.parseDouble(Double.java:538)
	at sample.ParseDoubleSample.main(ParseDoubleSample.java:11)

parseDoubleメソッドに文字列を引数に与えたことが原因で、NumberFormatExceptionの例外が発生することが確認できました!

 

スポンサーリンク

 

まとめ:parseDoubleメソッドを使ってみよう!

以上がparseDoubleメソッドについての解説でした!

parseDoubleメソッドは、文字列変換をするときとても便利なのでぜひ使ってみてください。

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

 

ほかにもJava解説記事を書いてます。
よければご参考ください。

【Java】BigDecimal型とdouble型と比較

【Java8】mapToObjメソッドを使ってFizzBuzz問題【ラムダ式】

 

今までブログで書いたJavaの解説記事のまとめは、こちらをご参考ください。

【Java】ブログで書いた文法記事のまとめ