gpt4 book ai didi

java - 将队列顶部与数组列表元素进行比较

转载 作者:太空宇宙 更新时间:2023-11-04 10:53:16 25 4
gpt4 key购买 nike

我用 Java 编写了一个方法,它接受一个数组列表,其中包含另一个大小为 3 的数组作为每个元素。例如{{0,0,0},{1,0,0},{1,1,0}...}。

如果队列的头部位于该数组列表内,该方法就会计算出来。

队列的结构与数组列表相同。

public static Queue<Integer[]> q = new LinkedList<Integer[]>();
List<Integer[]> outcomes = new ArrayList<Integer[]>();

Public static boolean outcomeSearch(List<Integer[]> outcomes){
boolean check = false;
for (int i=0; i<outcomes.size(); i++){
if (q.peek() == outcomes.get(i)){
check = true;
}
}
return check;
}

出于某种原因,我无法使 if 语句发挥作用。实际上,队列的头部是{0,0,0}结果是 {{0,0,0},{8,0,0},{0,5,0}...}。因此 for 循环应该在第一次迭代中将检查 boolean 值变为 true。但事实并非如此。

这个问题是比较数组内部的元素,而不是整个数组本身。

最佳答案

看起来问题可能在于队列的声明方式,以及它在方法中的实现方式。检查您是否将队列声明为类的静态变量或实例变量。

关于java - 将队列顶部与数组列表元素进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47579507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com