プリミティブ型の値をString型へ変換するには
これらのラッパークラスで用意されているtoString()
メソッドを使ってString型へ変換します。
この記事では、各プリミティブ型からString型へ変換する方法を解説します。
プリミティブ型については以下の記事を参照してください。
booleanのラッパークラスであるBoolean
のtoString
メソッドでStringに変換できます。
Java
boolean boo = true;
String Boo = Boolean.toString(boo);
System.out.println("boolean型:" + Boo);
実行結果
boolean型:true
charのラッパークラスであるCharacter
のtoString
メソッドでStringに変換できます。
Java
char c = '1';
String C = Character.toString(c);
System.out.println("char型:" + C);
実行結果
char型:1
byteのラッパークラスであるByte
のtoString
メソッドでStringに変換できます。
Java
byte b = 100;
String B = Byte.toString(b);
System.out.println("byte型:" + B);
実行結果
byte型:100
shortのラッパークラスであるShort
のtoString
メソッドでStringに変換できます。
Java
short s = 100;
String S = Short.toString(s);
System.out.println("short型:" + S);
実行結果
short型:100
intのラッパークラスであるInteger
のtoString
メソッドでStringに変換できます。
Java
int i = 100;
String I = Integer.toString(i);
System.out.println("int型:" + I);
実行結果
int型:100
longのラッパークラスであるLong
のtoString
メソッドでStringに変換できます。
Java
long l = System.currentTimeMillis();
String L = Long.toString(l);
System.out.println("long型:" + L);
実行結果
long型:1640827236575
floatのラッパークラスであるFloat
のtoString
メソッドでStringに変換できます。
Java
float f = 100f;
String F = Float.toString(f);
System.out.println("float型:" + F);
実行結果
float型:100.0
doubleのラッパークラスであるDouble
のtoString
メソッドで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値ですよ
以上で記事の解説はお終い!
もっとJavaやSpringを勉強したい方にはUdemyがオススメ!同僚に差をつけよう!