本文整理了Java中com.fpinjava.common.List.foldLeft()
方法的一些代码示例,展示了List.foldLeft()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。List.foldLeft()
方法的具体详情如下:
包路径:com.fpinjava.common.List
类名称:List
方法名:foldLeft
暂无
代码示例来源:origin: fpinjava/fpinjava
public static Tuple<List<Integer>, RNG> integers(RNG rng, int length) {
Tuple<List<Tuple<Integer, RNG>>, RNG> result = List.range(0, length).foldLeft(new Tuple<>(List.list(), rng), tuple -> i -> {
Tuple<Integer, RNG> t = integer(tuple._2);
return new Tuple<>(tuple._1.cons(t), t._2);
});
List<Integer> list = result._1.map(x -> x._1);
return new Tuple<>(list, result._2);
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testAdd() throws Exception {
List<Integer> list = List.list(1, 2, 3, 4, 5, 6, 7);
Heap<Integer> queue = list.foldLeft(Heap.<Integer>empty(), h -> h::add);
queue.head().map(a -> a == 1).forEachOrThrow(Assert::assertTrue);
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedAscending7() {
int limit = 7;
List<Integer> list = List.range(1, limit + 1);
Heap<Number> heap = list.foldLeft(Heap.empty(comparator), h -> i -> h.add(number(i)));
assertEquals(limit, heap.length());
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testAdd() throws Exception {
List<Integer> list = List.list(1, 2, 3, 4, 5, 6, 7);
Heap<Integer> queue = list.foldLeft(Heap.<Integer>empty(), h -> h::add);
// List<Tuple<Integer, Integer>> testList = list.zipWithPosition();
list.zipWithPositionResult().forEachOrThrow(testList ->List.sequence(testList.map(t -> queue.get(t._2).map(v -> v.equals(t._1)))).map(lst -> lst.forAll(x -> x)).forEachOrThrow(Assert::assertTrue));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testAdd() throws Exception {
List<Integer> list = List.list(1, 2, 3, 4, 5, 6, 7);
Heap<Integer> queue = list.foldLeft(Heap.<Integer>empty(), h -> h::add);
list.zipWithPositionResult().forEachOrThrow(testList -> List.sequence(testList.map(t -> queue.get(t._2).map(v -> v.equals(t._1)))).map(lst -> lst.forAll(x -> x)).forEachOrThrow(Assert::assertTrue));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedAscending7() {
int limit = 7;
List<Integer> list = List.range(1, limit + 1);
Tree<Integer> tree = list.foldLeft(Tree.<Integer>empty(), t -> t::insert);
assertEquals(limit, tree.size());
assertTrue(tree.height() <= 2 * log2nlz(tree.size() + 1));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedDescending7() {
int limit = 7;
List<Integer> list = List.iterate(limit, x -> x - 1, limit);
Tree<Integer> tree = list.foldLeft(Tree.<Integer>empty(), t -> t::insert);
assertEquals(limit, tree.size());
assertTrue(tree.height() <= 2 * log2nlz(tree.size() + 1));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedAscending7() {
int limit = 7;
List<Integer> list = List.range(1, limit + 1);
Tree<Integer> tree = list.foldLeft(Tree.<Integer>empty(), t -> t::insert);
assertEquals(limit, tree.size());
assertTrue(tree.height() <= 2 * Tree.log2nlz(tree.size() + 1));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedDescending7() {
int limit = 7;
List<Integer> list = List.iterate(limit, x -> x - 1, limit);
Tree<Integer> tree = list.foldLeft(Tree.<Integer>empty(), t -> t::insert);
assertEquals(limit, tree.size());
assertTrue(tree.height() <= 2 * Tree.log2nlz(tree.size() + 1));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertRandom7() {
int limit = 7;
List<Integer> list = List.list(2, 5, 7, 3, 6, 1, 4);
Heap<Integer> heap = list.foldLeft(Heap.<Integer>empty(), h -> h::add);
assertEquals(limit, heap.length());
assertTrue(isBalanced(heap));
assertTrue(isValueOrdered(heap));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedDescending7() {
int limit = 7;
List<Integer> list = List.iterate(limit, x -> x - 1, limit);
Tree<Integer> tree = list.foldLeft(Tree.<Integer>empty(), t -> t::insert);
assertEquals(limit, tree.size());
assertTrue(tree.height() <= 2 * log2nlz(tree.size() + 1));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedAscending7() {
int limit = 7;
List<Integer> list = List.range(1, limit + 1);
Heap<Integer> heap = list.foldLeft(Heap.<Integer>empty(), h -> h::insert);
assertEquals(limit, heap.length());
assertTrue(isBalanced(heap));
assertTrue(isValueOrdered(heap));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testAdd2() throws Exception {
List<Integer> list = List.list(7, 3, 1, 6, 4, 6, 2);
Heap<Integer> queue = list.foldLeft(Heap.<Integer>empty(), h -> h::add);
List.list(1, 2, 3, 4, 6, 6, 7).zipWithPositionResult().forEachOrThrow(testList -> List.sequence(testList.map(t -> queue.get(t._2).map(v -> v.equals(t._1)))).map(lst -> lst.forAll(x -> x)).forEachOrThrow(Assert::assertTrue));
}
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedAscending7() {
int limit = 7;
List<Integer> list = List.range(1, limit + 1);
Tree<Integer> tree = list.foldLeft(Tree.<Integer>empty(), t -> t::insert);
assertEquals(limit, tree.size());
assertTrue(tree.height() <= 2 * Tree.log2nlz(tree.size() + 1));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testAdd() throws Exception {
List<Integer> list = List.list(1, 2, 3, 4, 5, 6, 7);
Heap<Integer> queue = list.foldLeft(Heap.<Integer>empty(), h -> h::add);
queue.head().map(a -> a == 1).forEachOrThrow(Assert::assertTrue);
assertTrue(isBalanced(queue));
assertTrue(isValueOrdered(queue));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedDescending7() {
int limit = 7;
List<Integer> list = List.iterate(limit, x -> x - 1, limit);
Heap<Number> heap = list.foldLeft(Heap.empty(comparator), h -> i -> h.add(number(i)));
assertEquals(limit, heap.length());
assertTrue(isBalanced(heap));
assertTrue(isValueOrdered(heap, comparator));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertRandom7() {
List<Integer> list = List.list(2, 5, 7, 3, 6, 1, 4);
Map<Integer, String> map = list.foldLeft(Map.<Integer, String>empty(), m -> i -> m.add(i, NumbersToEnglish.convertUS.apply(i)));
assertTrue(list.forAll(map::contains));
assertTrue(List.sequence(list.map(i -> map.get(i).flatMap(x -> x.value).map(y -> y.equals(NumbersToEnglish.convertUS.apply(i))))).map(z -> z.forAll(w -> w)).getOrElse(false));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertOrderedAscending7() {
int limit = 7;
List<Integer> list = List.range(1, limit + 1);
Map<Number, String> map = list.foldLeft(Map.<Number, String>empty(), m -> i -> m.add(number(i), NumbersToEnglish.convertUS.apply(i)));
assertTrue(list.forAll(i -> map.contains(number(i))));
assertTrue(List.sequence(list.map(i -> map.get(number(i)).map(x -> x._2).map(y -> y.equals(NumbersToEnglish.convertUS.apply(i))))).map(z -> z.forAll(w -> w)).getOrElse(false));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testInsertRandom7() {
List<Integer> list = List.list(2, 5, 7, 3, 6, 1, 4);
Map<Number, String> map = list.foldLeft(Map.<Number, String>empty(), m -> i -> m.add(number(i), NumbersToEnglish.convertUS.apply(i)));
assertTrue(list.forAll(i -> map.contains(number(i))));
assertTrue(List.sequence(list.map(i -> map.get(number(i)).map(x -> x._2).map(y -> y.equals(NumbersToEnglish.convertUS.apply(i))))).map(z -> z.forAll(w -> w)).getOrElse(false));
}
代码示例来源:origin: fpinjava/fpinjava
@Test
public void testFold() {
int limit = 50;
List<Integer> list = List.range(1, limit + 1);
List<String> expected = list.reverse().map(NumbersToEnglish.convertUS);
Map<Integer, String> map = list.foldLeft(Map.<Integer, String>empty(), m -> i -> m.add(i, NumbersToEnglish.convertUS.apply(i)));
Result<List<String>> rl = List.sequence(map.foldLeft(List.<Result<String>>list(), lst -> me -> lst.cons(me.value), l1 -> l2 -> List.concat(l1, l2)));
assertTrue(rl.map(expected::equals).getOrElse(false));
}
内容来源于网络,如有侵权,请联系作者删除!