初心者ですみません。


Java5.0のジェネリックスの書き方の質問です。
Listの中のオブジェクトをループでまわしたくで
以下のように記述しました。

List sentenceList = contents.getSentenceList();

for(Sentence sentence : sentenceList){
;
}

Contentsクラスのメンバーとして
private List<Sentence> SentenceList;
を定義してます。

するとfor文で
「要素タイプObjectからSentenceには変換できません。」のコンパイルエラーがでます。


sentenceListの実体はArrayListです。
ジェネリックスの表記でループをまわしたいだけなんですが
どうもジェネリックスは代入ができないだとかでかわりに↓をやってもエラーがでます。

for(Sentence<?> sentence : sentenceList){

for(Sentence<? extends Sentence> sentence : sentenceList)

もちろんSDK1.4の記述でかけますが、5.0のジェネリックスの理解のために
どなたかご教授お願いします。

回答の条件
  • 1人2回まで
  • 登録:2007/04/29 11:23:08
  • 終了:2007/04/29 18:48:40

ベストアンサー

id:K_SUKE No.1

K_SUKE回答回数73ベストアンサー獲得回数52007/04/29 12:50:40

ポイント35pt

List<Sentence> sentenceList = contents.getSentenceList();

for(Sentence sentence : sentenceList){

;

}

これでどうでしょう。

id:bukiyou99

おっしゃるとおりできました。

ありがとうございました。

2007/04/29 18:48:06

その他の回答(1件)

id:K_SUKE No.1

K_SUKE回答回数73ベストアンサー獲得回数52007/04/29 12:50:40ここでベストアンサー

ポイント35pt

List<Sentence> sentenceList = contents.getSentenceList();

for(Sentence sentence : sentenceList){

;

}

これでどうでしょう。

id:bukiyou99

おっしゃるとおりできました。

ありがとうございました。

2007/04/29 18:48:06
id:wnagata No.2

wnagata回答回数170ベストアンサー獲得回数182007/04/29 14:14:39

ポイント35pt

List sentenceList = contents.getSentenceList();

List<Sentence> sentenceList = contents.getSentenceList();

に変えればよいだけではないのでしょうか。

http://www.stackasterisk.jp/tech/java/jdk501_01.jsp

id:bukiyou99

おっしゃるとおりできました。

ありがとうございました。

2007/04/29 18:48:05

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません