Java에서 람다가 여러 다른 유형을 허용하도록 할 수 있습니까?
즉 : 단일 변수가 작동합니다.
Function <Integer, Integer> adder = i -> i + 1;
System.out.println (adder.apply (10));
Varargs도 작동합니다.
Function <Integer [], Integer> multiAdder = ints -> {
int sum = 0;
for (Integer i : ints) {
sum += i;
}
return sum;
};
//....
System.out.println ((multiAdder.apply (new Integer [] { 1, 2, 3, 4 })));
하지만 저는 다음과 같이 다양한 유형의 인수를 받아 들일 수있는 것을 원합니다.
Function <String, Integer, Double, Person, String> myLambda = a , b, c, d-> {
[DO STUFF]
return "done stuff"
};
주요 용도는 편의를 위해 함수 내부에 작은 인라인 함수를 포함하는 것입니다.
Google을 둘러보고 Java의 Function Package를 검사했지만 찾을 수 없습니다. 이것이 가능한가?
Function<One, Function<Two, Function<Three, Function<Four, Function<Five, Six>>>>> func = a -> b -> c -> d -> e -> 'z';