java
技术无私
技术无私
展开
-
Lambda表达式详解
Lambda简介Lambda 表达式是 JDK8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的 Java 代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。JDK 也提供了大量的内置函数式接口供我们使用,使得 Lambda 表达式的运用更加方便、高效。对接口的要求虽然使用 Lambda 表达式可以对某些接口进行简单的实现,但并不是所有的接口都可以使用 Lambda 表达式来实现。Lambda 规定接口中只能有一个需要被实现的方法,不是规定接口中只能有一个方法jd转载 2020-07-06 16:48:12 · 173 阅读 · 0 评论 -
使用双花括号初始化实例导致内存溢出
例如:Map<String, String> map = new HashMap() {{ put("map1", "value1"); put("map2", "value2"); put("map3", "value3"); }}; map.forEach((k, v) -> { System.out.println("key:" + k + " value:" + v); });这段代码其实是创建了匿名内部类,然后再进行初始化代码块。查看class文件发现多出带有...转载 2020-05-22 17:32:59 · 727 阅读 · 2 评论