0

DictEntryという別のクラスがあります。私自身のクラスの辞書では、私は持っています

private LinkedList<DictEntry> dictList = new LinkedList<DictEntry>(); //initiate linked list
private int sizeOfArray; //variable for size of Array [must be prime number]
private DictEntry table[] = new DictEntry[sizeOfArray]; // array of type DictEntry
table[keyCode]= dictList.add(pair); //[ERROR] Type MissMatch, Cannot Convert boolean to type DictEntry

配列とリンクリストをタイプDictEntryとしてすでに宣言しましたが、なぜそれでもブール値を要求するのですか?

LinkedListをStringとして宣言し、.add()を使用して文字列を追加する場合、問題はありません。

何か案は?

4

2 に答える 2

4

はい... a (常に) をLinkedList.add返します。型が一致しないため、その戻り値を配列に割り当てることはできません。あなたが何をしようとしているのかは明らかではありません...おそらくあなたが望んでいた:booleantrue

dictList.add(pair);
table[keyCode] = pair;

?

LinkedList を String として宣言し、.add() を使用して文字列を追加すると、問題はありません。

これが何を意味するのかはまったく明確ではありませんがDictEntry、コード内のすべての出現箇所を に変更Stringすると、まったく同じ問題が発生します。

于 2012-10-11T21:49:55.443 に答える
1
table[keyCode] = /*...*/

この右辺はDictEntry.

/*...*/ = dictList.add(pair)

の戻り値add()は、成功または失敗を示すブール値です。(リンクされたリストの場合、これは常に true です。)

于 2012-10-11T21:50:03.810 に答える