问题标签 [listiterator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 试图测试 ListIterator 但它进入了无限循环
我正在用 Java 编程我创建了一个类来获取一个迭代器,因为我在这个程序中只使用这个代码的一个列表
然后我尝试用这种方法使用它
每当我将它与我的测试类一起使用时:
它似乎进入了一个无限循环,这是为什么?
java - 使用 ListIterator 更改 List 中的数据
这是我用来从给定交易构建大型交易的功能。(数据挖掘)
声明database
是private List<String[]> database = null;
声明MTdatabase
是private List<String[]> MTdatabase = null;
在调用此函数之前database
具有所有必需的数据并且MTdatabase
最初是空的。我从中获取数据database
,对其进行修改,然后将其存储在MTdatabase
.
我没有修改 中的任何数据database
,但我不知道为什么值database
会改变。
MTrans
在 for 循环中进行了修改,但由于我没有使用itrdb.set()
,因此不应在database
. 我不想修改database
。我试图存储 in 的初始值MTrans
以ntrans
保持database
相同的数据,但ntrans
每次更改时MTrans
都会更改。代码ntrans
显示为注释。
代码有什么问题吗?不想修改怎么办database
?有没有办法存储初始值MTrans
并在以后使用它?
c++ - 列表错误上的 C++ 迭代器
我在 C++ 类中有以下内容:在通过调用 isValid() 检查迭代器是否仍然有效后,我想使用迭代器通过调用 getNextQuestion() 函数来一次获取问题列表的一个元素。它给了我以下可怕的错误:
这是我调用这些函数的代码,也许这就是问题所在:
java - Java LinkedList 节点与添加和删除
我有一个项目列表,我的程序需要一次显示一个项目,用户可以选择转到下一个或上一个项目。
Java 是否具有 LinkedListNode 类,或者是否有具有此类实现的库,以便我可以遍历列表并同时追加或删除元素?我知道 Java 有 listIterator 但我在查看列表时无法修改它(遇到 ConcurrentModificationException)
java - 如何维护有序链表并在java中添加、删除元素
我想维护一个名为“ClientStatus”的对象列表,其中只包含客户端标识 (id) 和一些时间字段,即与该客户端相关的时间字段。此列表应根据此时间字段按升序排序。我要支持的操作是:
我希望每个新条目都有时间 >= 列表中的最后一个条目,但有可能出现竞争条件,我可能会得到乱序值。所以我认为从最后迭代列表将是最省时的解决方案。
这些是我使用的 DS:
LinkedList 和 ListIterator 作为 ListIterator 允许您从末尾迭代元素并在迭代时添加新条目。但是代码看起来很乱:
假设我的列表有值:2 3 6 7 9 我想加 5
有一个更好的方法吗?
我也尝试使用 LinkedList 和 Dequeue,但降序迭代器不允许您添加/删除条目。我试图计算索引,但随后 set(index, value) 替换了现有条目。如何在列表中插入条目?
====================== 修订版 2 ========================== ==
根据我决定使用 SortedSet 的共识,如果我编写的代码可以在 Comparator 和 equals 之间的一致性方面进行技术性审查,我将不胜感激。
我在比较 id 的唯一一个客户端 id 列表中不能有多个条目,但是两个不同的客户端可以有相同的时间值。此代码似乎不起作用,添加工作正常但如果我无法仅基于 clientid 删除条目。
java - Java ListIterator 中的哪个元素被认为是先前的?
我目前正在尝试学习如何实现我自己的 ListIterators。我已经实现了大部分并准备好了,除了我对 previous() 方法感到困惑。按照标准约定,我能否解释一下 previous() 通常是如何解释的。
IE:
根据 Oracles Java Platform 7 API:
E 前一个()
返回列表中的前一个元素并将光标位置向后移动。可以重复调用此方法以向后迭代列表,或与调用 next() 混合以来回遍历。(请注意,交替调用 next 和 previous 将重复返回相同的元素。)
我不太明白的是,如果调用 previous(),它会返回“鱼”还是“猫”。
我以两种方式理解它:
1) 'fish' 是您之前所在的对象
2) 'cat' 是在数字上在 'fish' 索引之前的索引处的对象
如果 previous 返回 'fish',那么无论遍历的方向如何,remove() 实际上都会删除相同的元素吗?
javascript - 列表迭代器中的无限循环
我创建了一个列表迭代器,但是当尝试向后遍历一个列表时,循环无限运行。我做错了什么?
java - ListIterator.next() 返回 null
我的问题非常非常简单,但是我在网上找到的所有内容都告诉我我的做法是正确的——但我显然误解了一些东西。
我有一个简单的 Java ListIterator,它在 while-hasNext() 循环中为 next() 返回 null。这是我对调试状态的评论的代码:
在我看来,如果没有 next() 对象,则不应进入循环——这就是我使用 hasNext() 检查的原因。我理解错了什么,正确的方法是什么?
java - List 的元素按什么顺序访问
我正在查看 Java 中的列表和排序。根据文档 aList
是对象的有序列表,当对象是标准类时,例如String
,Integer
它将使用标准比较器进行比较。有几个问题浮现在脑海。
如果您列出了一些任意对象(不是标准类),您是否必须实现
Comparator
接口,或者它会依赖toString()
?您是否必须使用 ListIterator 以您需要的顺序遍历列表?
查看文档元素在最后添加到列表中,因此除非您对其进行排序或使用 ListIterator,否则它们不会按顺序排列。
delphi - TObjectList 中的 for 怎么办?
我正在尝试使用for in
迭代 a TObjectList
:
它无法编译:
[dcc32 错误] Project1.dpr(15):E2010 不兼容的类型:“TObject”和“Pointer”
似乎 Delphi 的for in
构造不处理无类型的、未降级的、TObjectList
可枚举的目标。
如何枚举 a 中的对象TObjectList
?
我现在应该做什么
我目前的代码是:
没有充分的理由,我希望将其更改为:
为什么要使用枚举器?只因。