java - 如何使用字符串参数 s 来创建带有参数名称的新 LinkedList?

标签 java parameters linked-list identifier

我正在创建一个将保存一些对象的队列列表。我想创建一个方法,将新队列添加到列表中并返回一个 boolean 值。方法声明中应该有一个 String 参数,用于将同名的新队列添加到队列列表中。我无法使用 String 参数作为新 LinkedList 的标识符,因为它已经定义为字符串。如何使用字符串参数创建这个新的 LinkedList?

public boolean addQueue(String s){

LinkedList<Pcb> s = new LinkedList<Pcb>();

QList.add(s);

return true;

}

最佳答案

我不确定你想要的是如下。但您不需要指定要添加的每个列表的名称,只需使用 List.contains() 即可。它将使用 Object.equals() 进行比较。它会比较列表中的全部内容,更准确地说,它使用 Object.hashCode() 来实现这一点。因此,我认为不需要额外的唯一标识符

代码片段

private static List<List<String>> QList = new ArrayList<>();

public static void main(String[] args) {
    addQueue(Arrays.asList("a","b","c"));
    addQueue(Arrays.asList("a","b","c"));
    addQueue(Arrays.asList("c","b","a"));
    addQueue(Arrays.asList("a","c","b"));
    addQueue(Arrays.asList("c","b","a"));

    System.out.println(QList.toString());
}

public static void addQueue(List<String> list){
    if (!QList.contains(list)) {
        QList.add(list);
    }
}

控制台输出

[[a, b, c], [c, b, a], [a, c, b]]

关于java - 如何使用字符串参数 s 来创建带有参数名称的新 LinkedList?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58617572/

相关文章:

python - Python 中参数排序的约定是什么?

python - 重新获取值或随身携带它们

ruby-on-rails - 错误 "param is missing or the value is empty: personas_x_tipos_persona"

c - 链表内的链表

algorithm - 网格数据结构

c - 反转链表 C

java - Apache 卡夫卡 : How to find out consumer group of a topic?

java - 如何将 "new line"放在 JSP 表达式语言中?

java - Java 中类型转换的隐式工作

java - 如何在 Java 中隐藏我的数据库信息?