Search in sources :

Example 31 with CharSeq

use of javaslang.collection.CharSeq in project javaslang by javaslang.

the class Euler43Test method tenDigitPandigitalsWithProperty.

private static Seq<Long> tenDigitPandigitalsWithProperty() {
    final CharSeq ALL_DIGITS = CharSeq.of("0123456789");
    final List<Integer> DIVISORS = List.of(2, 3, 5, 7, 11, 13, 17);
    return ALL_DIGITS.combinations(2).flatMap(CharSeq::permutations).flatMap(firstTwoDigits -> DIVISORS.foldLeft(List.of(firstTwoDigits), (accumulator, divisor) -> accumulator.flatMap(digitsSoFar -> ALL_DIGITS.removeAll(digitsSoFar).map(nextDigit -> digitsSoFar.append(nextDigit))).filter(digitsToTest -> digitsToTest.takeRight(3).parseInt() % divisor == 0))).map(tailDigitsWithProperty -> tailDigitsWithProperty.prepend(ALL_DIGITS.removeAll(tailDigitsWithProperty).head())).map(CharSeq::parseLong);
}
Also used : CharSeq(javaslang.collection.CharSeq) List(javaslang.collection.List) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) Seq(javaslang.collection.Seq) Test(org.junit.Test) CharSeq(javaslang.collection.CharSeq)

Example 32 with CharSeq

use of javaslang.collection.CharSeq in project javaslang by javaslang.

the class CharSeqTest method shouldTabulateTheCharSeq.

@Test
public void shouldTabulateTheCharSeq() {
    final Function<Number, Character> f = i -> i.toString().charAt(0);
    final CharSeq actual = tabulate(3, f);
    assertThat(actual).isEqualTo(of('0', '1', '2'));
}
Also used : OutputStream(java.io.OutputStream) PrintStream(java.io.PrintStream) Option(javaslang.control.Option) java.util(java.util) Serializables.deserialize(javaslang.Serializables.deserialize) Serializables.serialize(javaslang.Serializables.serialize) Test(org.junit.Test) IOException(java.io.IOException) org.assertj.core.api(org.assertj.core.api) Function(java.util.function.Function) Supplier(java.util.function.Supplier) Tuple(javaslang.Tuple) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) CharSeq(javaslang.collection.CharSeq) Arrays.asList(java.util.Arrays.asList) Tuple2(javaslang.Tuple2) CharSeq(javaslang.collection.CharSeq) Test(org.junit.Test)

Example 33 with CharSeq

use of javaslang.collection.CharSeq in project javaslang by javaslang.

the class CharSeqTest method shouldAppendElementToNil.

// -- append
@Test
public void shouldAppendElementToNil() {
    final CharSeq actual = empty().append('1');
    final CharSeq expected = of('1');
    assertThat(actual).isEqualTo(expected);
}
Also used : CharSeq(javaslang.collection.CharSeq) Test(org.junit.Test)

Example 34 with CharSeq

use of javaslang.collection.CharSeq in project javaslang by javaslang.

the class CharSeqTest method shouldReturnSubSequenceWhenIndicesAreWithinRange.

@Test
public void shouldReturnSubSequenceWhenIndicesAreWithinRange() {
    final CharSeq actual = of('1', '2', '3').subSequence(1, 3);
    assertThat(actual).isEqualTo(of('2', '3'));
}
Also used : CharSeq(javaslang.collection.CharSeq) Test(org.junit.Test)

Example 35 with CharSeq

use of javaslang.collection.CharSeq in project javaslang by javaslang.

the class CharSeqTest method shouldAppendAllNilToNonNil.

@Test
public void shouldAppendAllNilToNonNil() {
    final CharSeq actual = of('1', '2', '3').appendAll(empty());
    final CharSeq expected = of('1', '2', '3');
    assertThat(actual).isEqualTo(expected);
}
Also used : CharSeq(javaslang.collection.CharSeq) Test(org.junit.Test)

Aggregations

CharSeq (javaslang.collection.CharSeq)69 Test (org.junit.Test)68 java.util (java.util)4 IOException (java.io.IOException)1 OutputStream (java.io.OutputStream)1 PrintStream (java.io.PrintStream)1 Arrays.asList (java.util.Arrays.asList)1 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)1 Function (java.util.function.Function)1 Supplier (java.util.function.Supplier)1 Serializables.deserialize (javaslang.Serializables.deserialize)1 Serializables.serialize (javaslang.Serializables.serialize)1 Tuple (javaslang.Tuple)1 Tuple2 (javaslang.Tuple2)1 List (javaslang.collection.List)1 Seq (javaslang.collection.Seq)1 Option (javaslang.control.Option)1 org.assertj.core.api (org.assertj.core.api)1 Assertions.assertThat (org.assertj.core.api.Assertions.assertThat)1