riccardo.cardin:
Tengo algo de código escrito en Java 8 características, lo que significa arroyos y lambdas. Ahora, tengo que volver a utilizar dicho código en un proyecto que utiliza Java 7. ¿Existe la posibilidad de refactorizar automáticamente el código usando IntelliJ?
Por ejemplo, tengo que refactorizar un código que tiene el siguiente, en un simple for
/ while
bucle.
Arrays.stream(values)
.distinct()
.limit(2)
.count();
Charles Dowbecki:
Sí, IntelliJ ha "Reemplazar cadena de API corriente de bucle con" opción refactor. Se aparece después de pulsar Alt+Enter
después de colocar cursor en el Arrays.stream()
método:
Se producirá un código como:
long count = 0L;
long limit = 2;
Set<Integer> uniqueValues = new HashSet<>();
for (int i : new int[]{1, 2, 3}) {
if (uniqueValues.add(i)) {
if (limit-- == 0) break;
count++;
}
}
System.out.println(count);
Para la opción de trabajo el nivel de lenguaje de proyecto tiene que ser de 8 o superior.