【8/27まで】Udemyの人気コースが今なら1,200円から!!

【Java入門】プリミティブ型をString型に変換する方法

【Java入門】String型に変換する方法

プリミティブ型の値をString型へ変換するには
これらのラッパークラスで用意されているtoString()メソッドを使ってString型へ変換します。
この記事では、各プリミティブ型からString型へ変換する方法を解説します。
プリミティブ型については以下の記事を参照してください。
【Java入門】プリミティブ型と参照型の違い 【Java入門】プリミティブ型と参照型の違い

boolean型からString型への変換

booleanのラッパークラスであるBooleantoStringメソッドでStringに変換できます。

Java

boolean boo = true;
String Boo = Boolean.toString(boo);
System.out.println("boolean型:" + Boo);

実行結果

boolean型:true

char型からString型への変換

charのラッパークラスであるCharactertoStringメソッドでStringに変換できます。

Java

char c = '1';
String C = Character.toString(c);
System.out.println("char型:" + C);

実行結果

char型:1

byte型からString型への変換

byteのラッパークラスであるBytetoStringメソッドでStringに変換できます。

Java

byte b = 100;
String B = Byte.toString(b);
System.out.println("byte型:" + B);

実行結果

byte型:100

short型からString型への変換

shortのラッパークラスであるShorttoStringメソッドでStringに変換できます。

Java

short s = 100;
String S = Short.toString(s);
System.out.println("short型:" + S);

実行結果

short型:100

int型からString型への変換

intのラッパークラスであるIntegertoStringメソッドでStringに変換できます。

Java

int i = 100;
String I = Integer.toString(i);
System.out.println("int型:" + I);

実行結果

int型:100

long型からString型への変換

longのラッパークラスであるLongtoStringメソッドでStringに変換できます。

Java

long l =  System.currentTimeMillis();
String L = Long.toString(l);
System.out.println("long型:" + L);

実行結果

long型:1640827236575

float型からString型への変換

floatのラッパークラスであるFloattoStringメソッドでStringに変換できます。

Java

float f = 100f;
String F = Float.toString(f);
System.out.println("float型:" + F);

実行結果

float型:100.0

double型からString型への変換

doubleのラッパークラスであるDoubletoStringメソッドでStringに変換できます。

Java

double d = 100d;
String D = Double.toString(d);
System.out.println("double型:" + D);

実行結果

double型:100.0

xxx.toStringは引数がnull値の場合にNullPointerExceptionが発生する

ラッパークラスのtoStringメソッドはプリミティブ型とラッパークラスのオブジェクトの両方を受け取れるので、ラッパークラスのオブジェクトを受け取った際にそれがnull値だった場合NullPointerExceptionが発生してしまいます。

xxx.toStringでnull値をStringに変換する例

Integer i2 = null;
String I = Integer.toString(i2);//ここでNullPointerExceptionが発生
System.out.println(I);

実行結果

Exception in thread "main" java.lang.NullPointerException
        at xxx.Sample4.main(Sample4.java:8)

これを解決しようと安直にString.valueOfメソッドを使用すると、実行結果に文字列として”null”と出力されてしまいます。
この実装を採用すると、帳票にnullと表示されるバグを生んでしまうので良くないです。

String.valueOfでnull値をStringに変換する例

Integer i2 = null;
String I = String.valueOf(i2);
System.out.println(I);

実行結果

null

ではどうするかというと、これを解決するにはObjects.toStringメソッドを使用します。
第一引数にはString型に変換したいオブジェクトを指定し、
第ニ引数には、第一引数がnull値だった場合の変わりの文字列を指定することができます。

Objects.toStringでnull値をStringに変換する例

Integer i2 = null;
String I = Objects.toString(i2, "NULL値ですよ");
System.out.println(I);

実行結果

NULL値ですよ

コメントを残す

メールアドレスが公開されることはありません。