在這段代碼中,我使用java實現了一個通用鏈表。未經檢查在Java中拋出警告?
public class LL<Item extends Comparable<Item>> {
我的節點類的定義如下
private class Node{
private Item data;
private Node next;
public Node(Item data){
this.data = data;
next = null;
}
}
現在我的疑問是,我把編碼
Node x = head, y = (Node) b.head;
Type safety: Unchecked cast from LL.Node to LL<Item>.Node
我應該忽視這個時候得到警告,爲什麼編譯器生成。它有一個解決方法嗎?
編輯:
b爲類型LL的,函數簽名看起來像
public void mergeAlternate(LL b){
和頭部是LL級
private Node head;
'@SuppressWarnings(「unchecked」)' – NINCOMPOOP
@TheNewIdiot他應該理解**爲什麼會發生警告,而不是盲目地壓制它。如果這是一個答案,它會立即從我-1。 –
'b'和'b.head'的類型是什麼? –