gpt4 book ai didi

java - hamcrest TypeSafeMatcher 无法匹配双数组

转载 作者:行者123 更新时间:2023-11-29 05:11:44 25 4
gpt4 key购买 nike

<分区>

我写了这个匹配器来检查 double[] 的内容:

@SuppressWarnings({ "rawtypes", "unchecked" })
public static Matcher<double[]> isArrayCloseTo(double[] expected) {
final double DELTA = 1e-10;
List<Matcher<Double>> matchers = new ArrayList<>();
for (double d : expected)
matchers.add(new IsCloseTo(d, DELTA));
return new IsArray(matchers.toArray(new Matcher[matchers.size()]));
}

我禁止显示这些警告,因为对于没有通用类型的数组我无能为力。该方法看起来不错,但总是失败:

assertThat(new double[] { .1 }, isArrayCloseTo(new double[] { .1 })); //fails

问题出在TypesafeMatcher, line 65 : expectedType.isInstance(item),其中 expectedTypeObject.classitem[0.1 ]

我怀疑这个问题与我无法泛化传递给 IsArrayMatcher 数组有关,但我不知道如何解决这个问题。谁能告诉我应该如何匹配 double 数组?

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