преобразование лямбда-выражений в JAVA 7 - PullRequest
0 голосов
/ 06 декабря 2018

Я хотел бы использовать инструменты, предоставленные с этого сайта , который по сути способен принимать простые классы POJO и выводить сгенерированные тесты junit.Тем не менее, код использует Java 8 (должен быть в Java 7).Что такое Java 7 эквивалентно следующему коду?Это в основном лямбда-выражения, которые должны быть преобразованы.

код:

открытый абстрактный класс DtoTest {

/** A map of default mappers for common objects. */
private static final ImmutableMap<Class<?>, Supplier<t>> DEFAULT_MAPPERS;

static {
    final Builder<Class<?>, Supplier<?>> mapperBuilder = ImmutableMap.builder();

    /* Primitives */
    mapperBuilder.put(int.class, () -> 0);
    mapperBuilder.put(double.class, () -> 0.0d);
    mapperBuilder.put(float.class, () -> 0.0f);
    mapperBuilder.put(long.class, () -> 0l);
    mapperBuilder.put(boolean.class, () -> true);
    mapperBuilder.put(short.class, () -> (short) 0);
    mapperBuilder.put(byte.class, () -> (byte) 0);
    mapperBuilder.put(char.class, () -> (char) 0);

    mapperBuilder.put(Integer.class, () -> Integer.valueOf(0));
    mapperBuilder.put(Double.class, () -> Double.valueOf(0.0));
    mapperBuilder.put(Float.class, () -> Float.valueOf(0.0f));
    mapperBuilder.put(Long.class, () -> Long.valueOf(0));
    mapperBuilder.put(Boolean.class, () -> Boolean.TRUE);
    mapperBuilder.put(Short.class, () -> Short.valueOf((short) 0));
    mapperBuilder.put(Byte.class, () -> Byte.valueOf((byte) 0));
    mapperBuilder.put(Character.class, () -> Character.valueOf((char) 0));

    mapperBuilder.put(BigDecimal.class, () -> BigDecimal.ONE);
    mapperBuilder.put(Date.class, () -> new Date());

    /* Collection Types. */
    mapperBuilder.put(Set.class, () -> Collections.emptySet());
    mapperBuilder.put(SortedSet.class, () -> Collections.emptySortedSet());
    mapperBuilder.put(List.class, () -> Collections.emptyList());
    mapperBuilder.put(Map.class, () -> Collections.emptyMap());
    mapperBuilder.put(SortedMap.class, () -> Collections.emptySortedMap());

    DEFAULT_MAPPERS = mapperBuilder.build();
}

1 Ответ

0 голосов
/ 06 декабря 2018

Если вы используете IntelliJ, вы можете использовать расширение выражений.Alt + Enter -> Развернуть лямбда

...