草庐IT

parallel-collections

全部标签

java - Hamcrest 平等 Collection

Hamcrest中是否有匹配器来比较集合的相等性?有contains和containsInAnyOrder但我需要equals不绑定(bind)到具体的集合类型。例如。我无法将Arrays.asList和Map.values与Hamcrestequals进行比较。提前致谢! 最佳答案 IcannotcompareArrays.asListandMap.valueswithHamcrestequals.这是因为hamcrest过于热心的类型签名。您可以进行这种相等性比较,但您需要在编译之前将List对象转换为Collection。我经

java - Freemarker 'Collection.contains' 功能

从我的Java代码中,我返回了一个Set。View需要检查Set是否包含特定字符串。我找不到任何有关Freemarker如何处理此问题的文档。有什么想法吗? 最佳答案 您可以使用seq_contains。你需要FreeMarker2.3.1${x?seq_contains("blue")?string("yes","no")}如果序列包含“blue”,这将输出yes。根据评论,如果你想在if语句中使用它这是关于它的docoBuilt-insforsequences 关于java-Free

java - Java 中是否存在有界非阻塞 Collection?

我能找到的唯一一个是BoundedFIFOBuffer,它已被弃用。还有其他的吗? 最佳答案 ApacheCommonsCollections中的BoundedFIFOBuffer(我假设这就是您所指的)并未弃用,它只是移动了包。org.apache.commons.collections中的原始版本已弃用,而是移至org.apache.commons.collections.buffer 关于java-Java中是否存在有界非阻塞Collection?,我们在StackOverflow

java - 如何使用 lambda 表达式在 Java 的一行中创建值为 0,1,2,...,N 的 int[] 或 Collection<Integer>?

我想做这样的事情:int[]seq=newint[N];for(inti=0;i...在一行中,我想知道是否可以使用lambda表达式。如果它适用于ArrayList,对我来说没问题。 最佳答案 使用IntStream.range():int[]seq=IntStream.range(0,N).toArray();或IntStream.rangeClosed()如果你想包含N:int[]seq=IntStream.rangeClosed(0,N).toArray(); 关于java-如何

collections - 使用泛型创建集合对象

当我尝试创建如下对象时:Map>myMap=newHashMap>();句法上有什么问题,谁能解释一下? 最佳答案 泛型不是协变的。您可以使用:Map>myMap=newHashMap>();^^--------------^-------------------becomes------^|-----------------mustremainastype---------------虽然赋值左手边的Map可以“成为”赋值的HashMap,但同样不能应用于任何显示为通用的类型参数。编辑:如@Keppil所述,您可以使用有界通配符语

java.util.Collections 上的 Java 泛型警告

我有一个方法:publicListsortStuff(ListtoSort){java.util.Collections.sort(toSort);returntoSort;}这会产生一个警告:Typesafety:Uncheckedinvocationsort(List)ofthegenericmethodsort(List)oftypeCollections.Eclipse说修复警告的唯一方法是将@SuppressWarnings("unchecked")添加到我的sortStuff方法中。对于Java本身内置的东西,这似乎是一种糟糕的处理方式。这真的是我唯一的选择吗?为什么或者为

java - Collections.sort 是否保持相等元素的顺序?

我有一个按日期参数排序的对象列表,我想按类别参数对它们重新排序,但保持类别内的日期顺序。这样就足够了吗,还是我必须实现一个比较器来考虑同一类别对象的日期?//sortthelistbycategoryasc(,dateasc)Collections.sort((List)entries,newComparator(){@Overridepublicintcompare(ObjectelementA,ObjectelementB){returnelementA.category.compareTo(elementB.category);//whathappenswhenelementA.

java - List.of() 或 Collections.emptyList()

作为List.of(...)orCollections.unmodifiableList()的特例-指向空和不可变列表的首选Java9方法是什么?继续写Collections.emptyList();或切换到List.of(); 最佳答案 Collections.emptyList()不需要为每次调用创建一个新对象;这很典型,asinOpenJDK,只返回单例EMPTY_LIST对象。此外,更清楚的是,您打算意味着一个空列表,而不是忘记填写占位符。使用emptyList();它既更快(达到Java目标级别1.9)又更具可读性。

java - 为什么 Collections.swap 将目标列表分配给原始类型的变量?

在JDK1.6的源码中,Collections类的swap方法是这样写的:publicstaticvoidswap(Listlist,inti,intj){finalListl=list;l.set(i,l.set(j,l.get(i)));}创建传递列表的最终副本的原因是什么?他们为什么不直接修改传递的列表呢?在这种情况下,您还会收到原始类型警告。 最佳答案 没有列表的副本,只有对列表的引用的副本。final关键字并不重要。但是,使用原始类型很重要。如果改用参数,编译器会报错:publicstaticvoidswap(Listli

Java 8 Collections.sort(有时)不对 JPA 返回列表进行排序

Java8在我的JPAEclipseLink2.5.2环境中不断做奇怪的事情。我不得不删除问题https://stackoverflow.com/questions/26806183/java-8-sorting-behaviour昨天,因为这种情况下的排序受到一种奇怪的JPA行为的影响-我通过在进行最终排序之前强制执行第一个排序步骤找到了解决该问题的方法。仍然在带有JPAEclipselink2.5.2的Java8中,以下代码有时无法在我的环境中排序(Linux、MacOSX,均使用build1.8.0_25-b17)。它在JDK1.7环境中按预期工作。publicListgetDo