我正在嘗試在 Processing 3 中實(shí)現(xiàn) A* 算法,我決定使用優(yōu)先級(jí)網(wǎng)格來(lái)存儲(chǔ)可探索節(jié)點(diǎn)并確定其優(yōu)先級(jí)。我剛剛決定做一個(gè)簡(jiǎn)單的測(cè)試來(lái)確保我知道語(yǔ)法,但是當(dāng)我嘗試將隊(duì)列類型設(shè)置為“String”或“Integer”時(shí),我收到錯(cuò)誤知道為什么會(huì)這樣嗎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貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
看來(lái)您有一個(gè)名為的文件filename.java
,該文件的類型稱為PriorityQueue
不采用泛型。您很可能應(yīng)該刪除該文件,然后導(dǎo)入您想要的 PriorityQueue:
import java.util.PriorityQueue;

當(dāng)年話下
TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
您是否從 java.util 中導(dǎo)入了優(yōu)先級(jí)隊(duì)列?如果不是那么:
import java.util.PriorityQueue;

冉冉說(shuō)
TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊
解決了。我非常愚蠢,不小心在同一個(gè)文件夾中創(chuàng)建了一個(gè) PriorityQueue 文件。感謝您的快速解答。
添加回答
舉報(bào)
0/150
提交
取消