Java 为什么可以';t我使用“;“字符串”;作为优先级队列的参数?

Java 为什么可以';t我使用“;“字符串”;作为优先级队列的参数?,java,class,processing,priority-queue,Java,Class,Processing,Priority Queue,我试图在Processing 3中实现A*算法,我决定使用优先级网格来存储可探测节点并对其进行优先级排序。我刚刚决定做一个简单的测试以确保我知道语法,但是当我试图将队列的类型设置为“String”或“Integer”时,我得到了错误类型filename.PriorityQueue不是泛型的;它不能用参数参数化知道为什么会发生这种情况吗 import java.util.PriorityQueue; import java.util.Comparator; public class Test {

我试图在Processing 3中实现A*算法,我决定使用优先级网格来存储可探测节点并对其进行优先级排序。我刚刚决定做一个简单的测试以确保我知道语法,但是当我试图将队列的类型设置为“String”或“Integer”时,我得到了错误
类型filename.PriorityQueue不是泛型的;它不能用参数参数化
知道为什么会发生这种情况吗

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());
    }
}
import java.util.PriorityQueue;
导入java.util.Comparator;
公开课考试{
公共void main(字符串[]参数){
PriorityQueue pq=新的PriorityQueue(5,(a,b)->a.length()-b.length());
}
}

是否已从java.util导入优先级队列? 如果没有,则:

import java.util.PriorityQueue;

您是否已从java.util导入优先级队列? 如果没有,则:

import java.util.PriorityQueue;

您似乎有一个名为
filename.java
的文件,该文件的类型为
PriorityQueue
,不接受泛型。您很可能应该删除该文件,然后导入所需的PriorityQueue:

import java.util.PriorityQueue;

您似乎有一个名为
filename.java
的文件,该文件的类型为
PriorityQueue
,不接受泛型。您很可能应该删除该文件,然后导入所需的PriorityQueue:

import java.util.PriorityQueue;

解决了。我非常笨,不小心在同一个文件夹中创建了一个PriorityQueue文件。感谢您的快速回答。

已解决。我非常笨,不小心在同一个文件夹中创建了一个PriorityQueue文件。谢谢你的快速回答。

对不起,我的帖子格式不对。事实上,我已经添加了它,“filename.java”就是这个代码所在的文件。@TaoGroves因为这个类名为
Test
,是
public
,所以源文件名必须是
Test.java
。对不起,我的帖子格式错误。事实上,我已经添加了,而“filename.java”正是这个代码所在的文件。@TaoGroves因为这个类名为
Test
,并且是
public
,所以源文件名必须是
Test.java
。请更新您的问题以反映准确的错误代码,因为您的错误消息强烈表明您没有完全复制它,或者这不是实际的代码。请更新您的完整源代码。此错误消息表示源中有另一个PriorityQueue类。我想。请不要用“*已解决*”更新标题。单击最能回答问题的答案旁边的复选标记,接受该答案作为您问题的答案。您还应该单击所有有用答案旁边的向上箭头。请更新您的问题以反映准确的错误代码,因为您的错误消息强烈表明您没有完全复制它,或者这不是实际代码。请更新完整的源代码。此错误消息表示源中有另一个PriorityQueue类。我想。请不要用“*已解决*”更新标题。单击最能回答问题的答案旁边的复选标记,接受该答案作为您问题的答案。您还应该单击所有有用答案旁边的向上箭头。