将以上内容改为lambda表达式
时间: 2023-07-06 15:33:00 浏览: 93
Lambda表达式是一种匿名函数,可以用来表示一个函数对象。在Java中,Lambda表达式可以用来创建函数式接口的实例。如果要将上述内容改为Lambda表达式,可以这样写:
```java
import java.util.HashMap;
import java.util.Map;
import java.util.function.Supplier;
public class Main {
public static void main(String[] args) {
Supplier<Map<String, Object>> json = () -> {
Map<String, Object> person = new HashMap<>();
person.put("name", "Alice");
person.put("age", 30);
Map<String, String> address = new HashMap<>();
address.put("city", "Beijing");
address.put("country", "China");
person.put("address", address);
return person;
};
System.out.println(json.get());
}
}
```
上述代码中,我们使用Lambda表达式定义了一个名为`json`的`Supplier`函数式接口的实例,该函数式接口表示一个没有输入参数,返回`Map<String, Object>`类型的函数。Lambda表达式的主体是一个代码块,其中创建了一个`Map`对象,设置了其属性,最后返回该对象。通过调用`json.get()`方法,我们可以获取该Lambda表达式的返回值,即所创建的json对象。
阅读全文