首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有一种方法可以使PriorityQueue<modular>具有模块化的参数

有没有一种方法可以使PriorityQueue<modular>具有模块化的参数
EN

Stack Overflow用户
提问于 2019-04-20 07:19:05
回答 1查看 46关注 0票数 1

目前创建的代码使用两种类型的优先级队列作为独立的方法,方法之间的代码是相似的,试图将它们模块化为一个单一的方法,但优先级队列的类型中的参数不同

我目前正在运行eclipse,尝试在if语句中添加if语句,如果一个在另一个上工作。问题是代码需要队列的实例化

代码语言:javascript
复制
public void function (String modular){

    if (modular == "A"){
        PriorityQueue<A> queue = new PriorityQueue<A>();
    }
    if (modular == "B"){
        PriorityQueue<B> queue = new PriorityQueue<B>();
    }

    queue.add(parameter,parameter)
}
EN

回答 1

Stack Overflow用户

发布于 2019-04-20 08:29:42

你可以使用generic methods来处理这个问题,例如:

代码语言:javascript
复制
public <T> void function(PriorityQueue<T> queue){
    queue.add(whatever);
}

如果您的两种(或更多)类类型扩展了相同的父类,则可以使用以下内容:

代码语言:javascript
复制
public <T extends YOUR_PARENT_CLASS_NAME> void function(PriorityQueue<T> queue){
    queue.add(whatever);
}

来限制传入该方法的内容。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55768840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档