gpt4 book ai didi

java - 如何使用 Hamcrest 进行匹配器收集?

转载 作者:行者123 更新时间:2023-12-02 13:14:14 26 4
gpt4 key购买 nike

输入:

  1. 使用 MyElement 不使用 equals 方法的集合。
  2. 一个 org.hamcrest.TypeSafeMatcher 实现,它通过某个字段匹配元素。

目标是使以下语句可编译:

Collection<MyElement> elements = ...
Collection<TypeSafeMatchert> matchers = ...
assertThat(elements, Matchers.contains(matchers); //<error here

这里需要用到什么?它要我Matcher<? super java.util.List<MyElement>>并告诉我实际上通过了Matcher<java.lang.Iterable<? super java.util.List<MyElement>>> 。那么这里如何传递一个Matcher Collection呢?

有一个question关于将集合与 hamcrest 进行比较,但没有传递 Matchers 集合而不是元素的示例。

最佳答案

您需要定义一个:

,而不是定义 TypeSafeMatchersCollection
    List<Matcher<? super MyElement>> matchers = ...;

这样,Hamcrest 就会知道您想要什么。

关于java - 如何使用 Hamcrest 进行匹配器收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37383058/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com