Java 是否可以从lambda表达式中包含的方法返回值?
我遇到一本java书籍,其中指出,当lambda表达式中出现return语句时,它只会导致lambda返回,而不会导致封闭方法返回 上述语句是否意味着我们不能从lambda表达式中包含的方法返回值。 我找不到任何示例,因此创建了一个不会编译的虚拟程序Java 是否可以从lambda表达式中包含的方法返回值?,java,lambda,Java,Lambda,我遇到一本java书籍,其中指出,当lambda表达式中出现return语句时,它只会导致lambda返回,而不会导致封闭方法返回 上述语句是否意味着我们不能从lambda表达式中包含的方法返回值。 我找不到任何示例,因此创建了一个不会编译的虚拟程序 Numeric num=(n)->{ // assume interface Numeric{ int func(int n); } int a=5; int result=n/a
Numeric num=(n)->{ // assume interface Numeric{ int func(int n); }
int a=5;
int result=n/a;
resultMethod(n) // assume int resultMethod(int a) is method.
{
return n;
}
return result;
}
System.out.println(num.func(12));
这将检查输入的值是否为空文本。如果您在promt中输入Null作为文本,则此选项将生效。如果要检查n是否为NULL,请尝试以下代码
if(n == null)
{
}
请参见此示例:
public static void main() {
funcInt fi = (n) -> {
return n;
}
System.out.println("This will be executed");
}
在上面的示例中,将打印print语句
lambda表达式中的return语句不会导致在不打印语句的情况下返回main。check n==null而不是n.equalsNull。。
public static void main() {
funcInt fi = (n) -> {
return n;
}
System.out.println("This will be executed");
}