问题标签 [linkedhashset]

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 投票
5 回答
12296 浏览

java - LinkedHashMaps 与 LinkedHashSets 的优缺点是什么?

有人可以解释选择一个而不是另一个的主要好处以及该选择带来的坏处吗?

0 投票
9 回答
46414 浏览

java - 在 HashMap 中使用 keySet() 方法

我有一种方法可以遍历板上的可能状态并将它们存储在 HashMap 中

}

我对这组键感兴趣。我应该怎么做才能全部打印出来?

HashSet t = map.keySet()被编译器拒绝

0 投票
3 回答
12493 浏览

java - hibernate 是否保留 LinkedHashSet 的顺序,如果是,如何?

hibernate 是否保留 LinkedHashSet 的顺序,如果是,如何?如果这取决于数据库的类型,我想知道 PostgreSQL 的情况。

背景:

我知道 LinkedHashSet 的用途,我之所以问这个问题是因为我正在将我执行的一些函数的名称记录到一个与某个“functionName”表具有多对多关系的“logError”表中. 我需要这些函数保持与执行它们时相同的顺序,所以首先我找到相应的“functionName”对象,将它们放入 LinkedHashSet(在每个失败的函数之后),然后保留“logError”对象。

现在,当我再次从数据库中获取“logError”对象时,它还会被订购吗?如果是这样,我很好奇 Hibernate 是如何做到的。

0 投票
2 回答
438 浏览

java - LinkedHashSet javadoc 中的错误?

也许我很挑剔,但在 javadoc 中有以下有关 LinkedHashSet 实现的信息:

此实现与 HashSet 的不同之处在于它维护一个双向链表,该列表贯穿其所有条目。

我在 LinkedHashSet 类中找不到任何双链表。有人可以帮忙吗?

0 投票
10 回答
126908 浏览

java - HashSet 与 LinkedHashSet

它们之间有什么区别?我知道

LinkedHashSet 是 HashSet 的有序版本,它在所有元素中维护一个双向链表。当您关心迭代顺序时,请使用此类而不是 HashSet。当您遍历 HashSet 时,顺序是不可预测的,而 LinkedHashSet 允许您按照元素插入的顺序遍历元素。

但是在 LinkedHashSet 的源代码中,只有调用 HashSet 的构造函数。那么双链表和插入顺序在哪里呢?

0 投票
2 回答
897 浏览

java - 保存到 LinkedHashSet- 初学者

我收到一个警告说incompatible types. query.getResultList(); returns a List,但我希望该方法返回的是一个LinkedHashSet.

我在这里使用 a 的原因LinkedHashSet是为了避免将重复值输入到数据库中。我将首先调用该方法listHotels(),并检查它是否已经包含该值,如果没有,我会将这些值保存到 DB

编辑

这就是我将记录保存到我的数据库的方式

0 投票
3 回答
2158 浏览

java - hibernate:如何映射一个 Set 关联,以便保留 HQL 顺序

好的,这看起来很像 Hibernate 中的(另一个)错误/未实现的功能。

是否可以以尊重 HQL 中的子句的方式映射Set关联?"order by"

例如,假设您有 2 个实体:PageEntityQuestionEntity. 一个页面有一个集合。

如何使以下 HQL 工作:

我不想要的:

  • 在 Java 中使用排序(我们在 SQL 中有“排序依据”,所以我们不必这样做!)。SortedSet、Comparators 等是不可能的
  • 将其映射为带有<list-index>. 这会将“order by”添加到所有 SQL 查询中,我不想要这个
  • 再次使用 a<set order-by="orderIndex">因为,这将应用于所有查询

调试时,我看到正在使用的 Set 的实现是org.hibernate.collection.PersistentSet包装了一个Set. 包装的实现SetHashSet. 我希望 Hibernate 足够聪明,可以使用 aLinkedHashSet代替,这样它就可以尊重我的 " order by" HQL 子句。

0 投票
3 回答
2474 浏览

java - 为什么我的 Java LinkedHashSet 没有删除它包含的对象?

我在 aLinkedHashSet中有一个实现equals, hashCodeand的对象compareTo(在超类中),但是当我尝试从集合中删除该确切对象时,set.remove(obj)remove 方法返回false并且该对象保留在集合中。是否LinkedHashSet应该调用equals()其对象的方法?因为它没有。这可能是一个java错误吗?我正在运行 1.6.0_25。

0 投票
3 回答
5621 浏览

java - LinkedHashSet:hashCode() 和 equals() 匹配,但 contains() 不匹配

以下如何可能:

难道我做错了什么?

显然,它并不总是会发生(如果你创建了一组微不足道的对象,你就不会重现它)。但在我的情况下,它总是会发生更复杂的 arg 类。

编辑:我在这里不定义的主要原因arg是它的类相当大,Eclipse 生成hashCode的跨度为 20 行,长度是它的equals两倍。而且我认为这无关紧要-只要它们对两个对象相等即可。

0 投票
1 回答
184 浏览

java - 在linkedhashset 中使用isEmpty() 出错

我正在使用linkedhashset 来存储我的同义词列表。如果我的搜索词有同义词,就会做一些陈述。但是,当我的搜索词没有同义词时,会出现一些错误。下面是我的程序的一部分。

当搜索词没有同义词集时,会发生此错误“java.lang.NullPointerException”。谁能帮我?提前致谢。