2012-02-22 17 views
3

は、あなたが今高速列挙型でキャストすることは可能ですか?

      // Set<String> 
Object arrayOfSomething[] = someObject.toArray(); 

で始まる、私はarrayOfSomethingが本当にarrayOfStringsであることを知って、私は現在

を反復したいのですが、私

for (Object o : arrayOfSomething) { 
    String strValue = ((String) o).trim(); 
    ... 

は、以下に沿って何かされていると可能:

for (String (String) strValue : arrayOfSomething) { 
    ... 

高速列挙の一部としてオブジェクトをキャストすることは可能ですか?

+1

'for(Object o:arrayOfSomething){String strValue = o.toString(); ...' 'Arrays.asList()'を使うこともできます。リスト l = Arrays.asList(arrayOfSomething) ; 'for(String s:l){.....}' –

答えて

3

2

いいえ、それはできません。 someObjectSet<String>ある場合は、代わりにStringの配列に変換するにはtoArrayメソッドを使用することができます。また、タイプTの配列の代わりに、オブジェクトの配列を返すメソッドCollection.toArray(T[])あり

String [] arrayOfStrings = someObject.toArray(new String[someObject.size()]); 
関連する問題