Object -> String mit valueOf, toString oder cast ?

alphaChill

Aktives Mitglied
Hallo,

ich würde gern aus einem Object ein String machen, mit welcher Methode mache ich das am effektivsten?

Java:
	  String s1 = "Hallo";
	  String s2 = "Welt";
	  String s3 = "raum";
	  
	  Object[] oa = new Object[3];
	  oa[0] = s1;
	  oa[1] = s2;
	  oa[2] = s3;
	  
	  String e1 = String.valueOf(oa[0]);
	  String e2 = oa[1].toString();
	  String e3 = (String) oa[2];
	  
	  System.out.println(e1 + " " + e2+e3);
 
Java:
 String.valueOf(obj);
ist nichts anderes wie (siehe SourceCode von String)
Java:
obj.toString()

Folgendes...
Java:
(String) obj
... kann zu einer Exception führen..

Würde daher zu obj.toString() tendieren
 
Java:
 String.valueOf(obj);
ist nichts anderes wie (siehe SourceCode von String)
Java:
obj.toString()

Folgendes...
Java:
(String) obj
... kann zu einer Exception führen..

Würde daher zu obj.toString() tendieren
das ist nicht ganz richtig.

[c]obj.toString();[/c] ist eine moegliche NullPointerException
[c]String.valueOf(obj);[/c] sichert einen vor der NPE

daher wuerde ich eher zu String.valueOf tendieren, wenn die Objekte von irgendwo herkommen
 
bygones hat insofern recht, dass String.valueof vor einer NPE schützt (indem einfach null als String übergeben wird), in seinem Beispiel existiert diese Möglichkeit jedoch nicht und ich habe (leider) vorrausgesetzt, dass eine NPE geprüft wird, bevor man das objekt benutzt (so wie es auch eigentlich sein sollte)
 
Zuletzt bearbeitet:

Neue Themen


Zurück
Oben