当前位置: 首页 > 面试题库 >

按顺序遍历对象队列

梁丘伟
2023-03-14
问题内容

我创建了一个队列,其中包含一些对象,这些对象要按照它们在队列中的放置顺序进行迭代(第一个对象放在队列中,第二个对象放在队列中,第三个对象…)

我看到了一种在线执行此操作的方法,但不确定是否可以确保以正确的顺序访问队列中的对象?

for(MyObject anObject : queue){
    //do someting to anObject...

谢谢您的帮助。


问题答案:

这取决于Queue您使用哪种实现。

例如,LinkedList保证迭代将以FIFO(插入)顺序返回元素。这是因为它实现了Dequehtml" target="_blank">接口。

但是一般来说,其他类型的队列不一定是这种情况。

队列的javadoc状态:

队列通常但不一定以FIFO(先进先出)的方式对元素进行排序。例外情况包括优先级队列(根据提供的比较器对元素进行排序或元素的自然排序)和LIFO队列(或堆栈),对LIFO进行排序(后进先出)。

它还添加:

每个Queue实现必须指定其排序属性。

因此,您只需要检查所使用的特定队列的javadoc,即可找到答案。



 类似资料:
  • 本文向大家介绍vue使用v-for遍历对象时,是按什么顺序遍历的?如何保证顺序?相关面试题,主要包含被问及vue使用v-for遍历对象时,是按什么顺序遍历的?如何保证顺序?时的应答技巧和注意事项,需要的朋友参考一下 1、会先判断是否有iterator接口,如果有循环执行next()方法 2、没有iterator的情况下,会调用Object.keys()方法,在不同浏览器中,JS引擎不能保证输出顺序

  • 我想在级别顺序遍历中打印出BST。但是我以这种奇怪的方式得到了输出。此外,我使用Java可视化工具来检查我的算法,没有线索,因为可视化工具没有说明多个实例。我在想,要么我的变量没有正确地添加到我的实例中,要么没有添加到

  • 问题内容: 我正在尝试遍历JSON对象以导入数据,即标题和链接。我似乎无法掌握过去的内容。 JSON: 我尝试使用字典: 此代码仅在之前打印信息。( 忽略贾斯汀·比伯的曲目 :) 问题答案: 您加载JSON数据有些脆弱。代替: 您实际上应该这样做: 您不应该将“ JSON对象”视为什么。您所拥有的是清单。该列表包含两个字典。字典包含各种键/值对,所有字符串。当您这样做时,您将要求列表中的第一个字典

  • 问题内容: 请看下面我的地图 我正在按钥匙的大小顺序遍历此地图 但是,这打印出来 有没有一种方法可以按键的大小顺序打印出来,所以,我想像这样遍历这张地图 等等… 非常感谢您的帮助! 问题答案: 收集所有键,对它们进行排序,然后按键迭代地图,如下所示:

  • 问题内容: 我很难找到一种以我想要的方式遍历此JSON对象的方法。我在这里只使用Javascript。 首先,这是对象 现在,我正在尝试基本方法来访问此对象上的每个dialog_trunk。理想情况下,我想遍历对象,并为每个主干显示其值。 我已经尝试过使用for循环动态地生成dialog_trunk的名称/编号,但是我无法使用对象名称的字符串来访问该对象,因此我不确定从何处去。 问题答案: 为此使

  • 问题内容: 我从Web服务返回一个List <>作为JSON对象的列表。我正在尝试使用一个for循环来遍历列表并从属性中获取值。这是返回的JSON的示例: 因此,我尝试使用类似以下的方法提取内容: 应该怎么做? 问题答案: 今天遇到了同样的问题,您的话题对我有所帮助,所以这里找到解决方法;