我有一个名为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()添加字符串时,没有问题。
有什么想法吗?
答案 0 :(得分:4)
是的... LinkedList.add
会返回boolean
(始终为true
)。您无法将该返回值分配给数组,因为类型不匹配。目前还不清楚你在尝试尝试做什么......也许你想要:
dictList.add(pair);
table[keyCode] = pair;
当我将LinkedList声明为String并使用.add()添加字符串时,没有问题。
这完全不清楚你的意思,但是如果你只是将代码中DictEntry
的每一次出现更改为String
,那么你的完全就是问题
答案 1 :(得分:1)
table[keyCode] = /*...*/
右侧必须是DictEntry
。
/*...*/ = dictList.add(pair)
add()
的返回值是表示成功或失败的布尔值。 (对于链表,它总是如此。)