[英]JavaScript Anonymous functions in Java
我是JavaScript的新手,並且具有Java的一些中級知識,經過幾次練習后,我感到一個令人困惑的問題,是否有辦法在Java中應用匿名函數的概念? 可能嗎? 我很清楚我可能會因提出這個問題而受到批評,但無論如何我都是在問。 下面是一個JavaScript匿名函數的示例。
var myResult = (function () {
return arguments[0] + arguments[1];
}) (1,2);
alert(myResult);
使用@FunctionalInterface Java 8
public class Test {
@FunctionalInterface
public interface Func {
public String concat(String a, String b);
}
public static void main(String[] args) {
Func func = (a, b) -> a + b;
System.out.print(func.concat("Hello ", "World!"));
}
}
匿名內部類正是這樣做的。 在Java中,函數不能獨立存在; 它必須包裝在一個類中。 因此,最接近匿名函數的是匿名內部類。
int myResult = (new Object() {
public int calc(int[] args){
return args[0] + args[1];
} }).calc( new int[]{ 1, 2} );
System.out.println(myResult);
現在,可以使用Java 8使用lambda表達式(具有功能接口)輕松地完成此操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.