Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: 4dr14n31t0r en 8 Diciembre 2015, 01:00 AM

Título: ¿Como puedo implementar una funcion recursiva en una expresion lambda de Java?
Publicado por: 4dr14n31t0r en 8 Diciembre 2015, 01:00 AM
Código (java) [Seleccionar]
//La interfaz funcional

package test;

public interface Interface {

int factorial(int x);

}

Código (java) [Seleccionar]
//La clase que utiliza la expresion lambda

package test;

public class Test {

public static void main(String... args){
((Interface) x -> x == 1 ? 1 : x*factorial(x-1)).factorial(7); //No compila (busca la funcion en la clase Test).
((Interface) x -> x == 1 ? 1 : x*this.factorial(x-1)).factorial(7); //No compila (el puntero this apunta a un objeto de la clase Test).
}

}