我正在嘗試在 Processing 3 中實現 A* 算法,我決定使用優先級網格來存儲可探索節點并確定其優先級。我剛剛決定做一個簡單的測試來確保我知道語法,但是當我嘗試將隊列類型設置為“String”或“Integer”時,我收到錯誤知道為什么會這樣嗎The type filename.PriorityQueue is not generic; it cannot be parameterized with arguments <String>?import java.util.PriorityQueue;import java.util.Comparator;public class Test { public void main(String[] args) { PriorityQueue<String> pq= new PriorityQueue<String>(5,(a,b) -> a.length() - b.length()); }}
3 回答

ibeautiful
TA貢獻1993條經驗 獲得超6個贊
看來您有一個名為的文件filename.java
,該文件的類型稱為PriorityQueue
不采用泛型。您很可能應該刪除該文件,然后導入您想要的 PriorityQueue:
import java.util.PriorityQueue;
添加回答
舉報
0/150
提交
取消