2011-06-25 21 views
-2

この場合、型変換が動作しないのはなぜですか?なぜ型キャストが機能しないのですか

int b[] = {1,2,3,4,5}; 
    ArrayList list = new ArrayList(); 
    for (int i = 0; i < b.length; i++) { 
    list.add(i); 
    } 
     Collections.sort(list); 
    int c = (int) list.get(0); // This line is giving error 

このエラーを解決する方法はありますか?

答えて

-10

この

ArrayList<Integer> list = new ArrayList<Integer>(); 
    int c=list.get(0); 
+6

のように試してみてください、本当に悪い解決することを後世のために注意する必要があります。それは、バックに文字列と整数を文字列に変換し、汎用ArrayList を使用する代わりに、整数です。 –

+0

Hmmm。これがうまくいっても、それは下に高品質のものを受け入れられた答えとしてそれを見るために残念です... –

+0

OPが実際に大きなプログラムを持っているなら、それはそれほど変わっていませんが、質問は型キャストに関するものでした。私が認めているが、これをあなたの例とする文字列のリストについて何か質問したいと思うのではないだろうか? – Nanne

10

ライン2、代わりの

ArrayList list = new ArrayList(); 

試してみてください。

ArrayList<Integer> list = new ArrayList<Integer>(); 

、代わりに:

int c = (int) list.get(0); 

だけで実行します。

int c = list.get(0); 
2

エラーは "オブジェクトからintにキャストできません"。コンパイラはそこにオブジェクトを必要とします。

intにそれを最初に戻っ Integerから Objectをキャストして、自動unboxes
int c = (Integer) list.get(0); 

0

オブジェクトがリスト

ArrayList<Integer> list = new ArrayList<Integer>(); 

・ホープ、このことができますとして含まれていることデータの種類を定義する...整数型に変換することができません。これはacceped答えとしてマークされてきたが

関連する問題