2016-08-11 7 views
5

オブジェクトのtoString()呼び出しから作成されたString配列を取り込むことができるかどうか、疑問に思っています。ArrayListの.toString()呼び出しを1行にまとめる方法<Object>

これはループを使って行うことができますが、1行のアプローチがあることはわかりますか?

のjava-8を使用して

ループアプローチ

ArrayList<Object> objects = new ArrayList<Object>(); 
//fill object with elements 
// 

String[] strings = new String[object.length()]; 
for(int i = 0;i<10;i++)strings[i]=objects.get(i).toString(); 

答えて

11

String[] strings = objects.stream().map(Object::toString).toArray(String[]::new); 
+1

ストリームは素晴らしいです。感謝します。 – apemanzilla

+1

質問に「パフォーマンス」タグがあるので、これは正しい行であることを指摘する必要があります。それがあなたの目標だが、単純なfor-loopに比べてパフォーマンスが向上するわけではありません。 – VGR

関連する問題