为什么这在 Java 中不起作用
Why is this not working in Java
import java.util.function.Consumer;
public class test {
public static void main(String[] args) {
Consumer<String> c = (x) --> System.out.println(x.toLowerCase());
c.accept("Java2s.com");
}
}
有错误:
Exception in thread "main" java.lang.Error:
Unresolved compilation problems:
x cannot be resolved to a variable
x cannot be resolved
at test.main(test.java:5)
但是在所有官方文档中,这都是有效的...有人可以帮助我吗?
将 -->
更改为 ->
,它应该可以工作。它只适用于 java8 及更高版本。这是一种定义 lambda 表达式的方法,它会使用一个字符串(在您的情况下)并将大小写更改为小写。
import java.util.function.Consumer;
public class test {
public static void main(String[] args) {
Consumer<String> c = (x) --> System.out.println(x.toLowerCase());
c.accept("Java2s.com");
}
}
有错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problems: x cannot be resolved to a variable x cannot be resolved at test.main(test.java:5)
但是在所有官方文档中,这都是有效的...有人可以帮助我吗?
将 -->
更改为 ->
,它应该可以工作。它只适用于 java8 及更高版本。这是一种定义 lambda 表达式的方法,它会使用一个字符串(在您的情况下)并将大小写更改为小写。