问题标签 [linkedhashmap]

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.

0 投票
0 回答
1115 浏览

android - 如何使用 XmlPullParser 解析 xml

我正在尝试使用 XmlPullParser 以类似的格式解析 xml 文件

以下是我尝试开发的代码。我想要做的是将数据放入一个数组中,以便我可以调用数据并稍后使用它。您能否就如何修改代码以适合我的目的提供一些建议?

取回数据的代码[我不知道怎么做,以下是我的想法]

0 投票
2 回答
1035 浏览

java - 为什么Java在读取LinkedHashMap时会自动从String转换为Integer

我的 Java 应用程序显示一些奇怪的行为,我无法找到解决方案。

此代码片段获取LinkedHashMap键和值均为类型的 a 的内容,String并将它们写入文本文件。configWriter是类型PrintWriter

地图被宣布为:

它是通过使用Scanner该类从文本文件中读取标记来填充的。

映射中的一个值是 aString只包含数字(一个整数),但是当循环到达这个值时,它会抛出一个ClassCastException说法,即不能从Integerto 转换String。这很有意义,但值的类型是字符串。

有没有办法强制 Java 将此值保留为String?

0 投票
3 回答
2517 浏览

java - 获取 LinkedHashMap 的子集并保留顺序

与 HashMap 不同,LinkedHashMap 中的顺序很重要。这里的顺序是插入顺序。

假设我有一个如下所示的 LinkedHashMap(从上到下排序,左侧是键,右侧是值):

1:“一”

2:“二”

3:“三”

4:“四”

然后我有一个键列表,其中包含(3,1)。

我想要做的是按顺序循环遍历 LinkedHashMap 并挑选出其键在列表中的条目。

所以我想要的结果是(1 仍然在 3 之前,因为这是过滤前的顺序):

1:“一”

3:“三”

这是我的代码:

上面的代码返回我喜欢的结果。但我不确定它是否得到保证。

1:“一”

3:“三”

问题是:Iterator itr = linkedHashMap.keySet().iterator(); 上面的行将从集合中获取迭代器,并且集合没有排序。那么这会导致密钥随机排列吗?如果是的话,我不能在过滤后保持我的地图的原始顺序(不能保证)......有人可以帮我吗?

0 投票
4 回答
24798 浏览

java - LinkedHashMap 后进先出还是先进先出?

LinkedHashMap 本质上是 LIFO 还是 FIFO?如果我的地图是以下形式:

如果我要使用键集在地图上迭代,顺序是什么?

编辑:我想我确实混淆了两个不同的概念。让我重新表述这个问题。我使用 entryset 遇到数量的顺序是什么?谢谢你指出这一点。我不打算删除任何条目。

0 投票
1 回答
1399 浏览

android - 在 Android 上替换 JSON LinkedHashMap 对象中的转义

我在Android中有这段代码:

json 对象还通过该.put方法获得添加到它的其他内容。它只是在“ParticipantIds”键上搞砸了。

输出

输出

当传递给它时,我需要删除\json 对象中的出现。idObject1它不一定必须使用 Gson。我只是为了让它工作而使用 Gson。我也试过:

并尝试使用 JSON-Simple 传递它。我总是得到\转义字符。我什至尝试过.toString()idObject1各种方法.replace.replaceAll方法。它不起作用!

0 投票
1 回答
4834 浏览

java - 如何在 JSP 中的 LinkedHashMap 中执行 foreach 循环?

我对jsp没有太多经验。在java中我可以,但是打开一个块不好 <% %>

0 投票
2 回答
777 浏览

java - 在 ArrayList 内的 LinkedHashMap 中查找和分配值的替代方法

我在下面显示了一个代码,它工作正常。但我想知道是否还有其他方法可以实现这一点?基本上,我对 4 个循环所做的是比较并为 CopyMatrix 的键分配一个新值,如果使用 SeqGenerate 中的字符串/元素找到匹配项,则该键是数组列表中的一个linkedhashmap。我有另一个解决方案,它也是一个循环,但它没有工作,所以我坚持这个,我想知道是否有其他方法可以用更少的循环或其他一些技术来做到这一点。

编辑

好的,我正在尝试做的是这样的: SeqGenerate 包含此元素
ArrayList -------- String
(1)Hello World = { He el ll lo o_ _W Wo or rl ld}

(2)Hello Earth = { He el ll lo o_ _E Ear rt th}

Hello World 和 Hello Earth 是 SeqGenerate 中包含的文本类型的一个示例,但它们存储为两个字符序列,如我所示。copyOfMatrix 包含相同类型的序列,但我从另一组句子和文本生成它,但它们始终是两个字符的序列,如果找到匹配项,它们将比较并替换该值。

因此,我唯一知道如何比较嵌套循环中的元素是制作 for 循环,例如,我将 seqGenerate element 0 element 1 与存储在复制矩阵中的键进行比较。如果我找到匹配项,我将替换该值。希望这足够清楚。

谢谢你的时间!

0 投票
2 回答
736 浏览

scala - 在 Scala 中添加 LinkedHashMap 的解决方法?

我有一个 LinkedHashMap,我一直在以一种典型的方式使用它:在末尾添加新的键值对,并按插入顺序访问它们。但是,现在我有一个特殊情况,我需要将对添加到地图的“头部”。我认为 LinkedHashMap 源中有一些功能可以做到这一点,但它具有私有可访问性。

我有一个解决方案,我创建一个新映射,添加对,然后添加所有旧映射。在 Java 语法中:

有用。但这里的问题是我需要将我的主要数据结构(this.map)设为 var 而不是 val。

谁能想到更好的解决方案?请注意,我绝对需要 Map 集合提供的快速查找功能。前置的性能并不是什么大问题。

更一般地说,作为一名 Scala 开发人员,在这种情况下,假设没有可预见的并发需求,您将如何努力避免使用 var?您会创建自己的 LinkedHashMap 版本吗?坦率地说,看起来很麻烦。

0 投票
2 回答
2571 浏览

java - LinkedHashMap removeEldestEntry:删除了多少元素?

LinkedHashMap实现 LRU 缓存看起来很棒。它在链表管理方面有一些开销并且不是线程安全的,但是它简化了实现,我可以在我的代码中处理这些。

我有一个问题,到目前为止我还没有找到答案,如果实现了 removeEldestEntry 并且 put 发现列表已满,LinkedHashMap 从列表中删除了多少元素。

它是否只删除一个元素?或总大小的某个百分比。我担心的是,如果它只删除一个元素来放置新元素,那么它就是一个真正的性能问题。正如我所见,重新哈希操作非常昂贵。

请有人建议它是如何工作的,如果我可以使用 InitialCapacity、LoadFactor 或任何其他方式管理这些要删除的元素计数。

0 投票
5 回答
3845 浏览

java - 是否有同步和排序的地图对象(LinkedHashTable)?

我正在创建一个servlet.Filter实现,其中在将请求发送到 servlet 之前,我根据 IP 地址在数据库中查找用户 ID。

如果已经有来自同一 IP 地址的请求正在数据库中查找,我希望我的过滤器将传入请求存储到类似地图的对象中。然后,当我从数据库中获得响应时,我会将其应用于对该 IP 地址的所有请求,并将它们发送到 servlet。

类似地图的对象需要同步,但也需要维护插入顺序,以便一旦我找到用户 ID,所有隐藏的请求“将按照接收到的顺序进行处理”。

通过API,有一个LinkedHashMap可以很好地维持订单但不同步,它HashTable是同步的但没有给出任何迹象表明它将保持正确的顺序。

LinkedHashTable我可以使用某种对象吗?

我正在使用 Java 6。