在随机序列上多次使用 take(n)
Using take(n) more than once on Random sequence
我想从随机序列中提取字符串组。我发现 Randoms.takeFromValues 提供了一个最适合这个的序列。但它并没有像预期的那样安静地工作。我确定我做错了什么。这是一个测试代码,它在第二次断言时失败,因为 list2 的大小是 2 而不是 3.
@Test
public void totallylazy_random_sequence_test() {
List<String> strings = list("string-1","string-2","string-3","string-4","string-5","string-6");
Sequence<String> selector = Randoms.takeFromValues(strings);
List<String> list1 = selector.take(3).toList();
List<String> list2 = selector.take(3).toList();
assertThat(list1.size(), is(3));
assertThat(list2.size(), is(3));
}
您使用的是什么版本的 TL?我认为这可能是由这个较旧的错误引起的:
我想从随机序列中提取字符串组。我发现 Randoms.takeFromValues 提供了一个最适合这个的序列。但它并没有像预期的那样安静地工作。我确定我做错了什么。这是一个测试代码,它在第二次断言时失败,因为 list2 的大小是 2 而不是 3.
@Test
public void totallylazy_random_sequence_test() {
List<String> strings = list("string-1","string-2","string-3","string-4","string-5","string-6");
Sequence<String> selector = Randoms.takeFromValues(strings);
List<String> list1 = selector.take(3).toList();
List<String> list2 = selector.take(3).toList();
assertThat(list1.size(), is(3));
assertThat(list2.size(), is(3));
}
您使用的是什么版本的 TL?我认为这可能是由这个较旧的错误引起的: