【测试java的Lambda语法】教程文章相关的互联网学习教程文章

在Java中将谓词作为lambda返回【代码】

在this在线教程中,他们使用lambda来过滤用户列表:List<User> olderUsers = users.stream().filter(u -> u.age > 30).collect(Collectors.toList());现在我想创建一个接受lambda(u – > u.age> 30部分)的函数,这样我就可以将任何我想要的标准放在这个lambda中.但我有点坚持如何实现这一点.我做了一个空接口Filter,我做了以下方法:public List<User> filterUsers(Filter f, List<User users>){return users.stream().filter(f).co...

java – 如果在调用lambda提供给的方法的结果中赋值变量时,如何在lambda中使用变量?【代码】

我有一个方法TaskManager.newRepeatingTask(Runnable r,长延迟,长间隔),它返回一个UUID.我为该方法返回的内容分配了一个UUID变量,我想在Runnable中使用该变量.我将如何有效地完成这项工作,或者我将在这里完成的工作?UUID id = TaskManager.newRepeatingTask(() -> {for (int i = 0; i < profileButtons.length; i++) {GuiButton button = profileButtons[i];button.move(-1, 0);}toMove--;if (toMove == 0) {// id: "The variable...

如何从Java 8中的lambda表达式中获取信息?【代码】

我理解为什么lambda表达式不能改变局部变量,我理解他们可以访问和mututae类字段.对我来说,lambdas在许多情况下创建了更具表现力的代码,我想更频繁地使用它们. 我的问题是使用l??ambda的最佳实践不是单方法对象替换,而是简化代码如下:int pairsFound = 0; for (Map.Entry<String, Integer> entry : counters.entrySet()){if (entry.getValue() == 2)pairsFound++;}至pairsFound = map.forEach((key, value) -> {int z = 0;if (valu...

如何使用java 8 stream和lambda来flatMap一个groupingBy结果【代码】

我有一个包含其他对象列表的对象,我想返回由容器的某些属性映射的包含对象的平面图.任何一个是否可以只使用流和lambdas?public class Selling{String clientName;double total;List<Product> products; }public class Product{String name;String value; }让我们来处理一系列操作:List<Selling> operations = new ArrayList<>();operations.stream().filter(s -> s.getTotal > 10).collect(groupingBy(Selling::getClientName, m...

java – 多个lambda方法引用【代码】

可以链接/连接lambda表达式中的元素所执行的操作,如下所示:list.forEach(s -> {System.out.println(s.toLowerCase());System.out.println(s.toUpperCase()); });有没有办法用方法引用来做到这一点?像这样的东西:list.forEach({System.out::println(String::toLowerCase);System.out::println(String::toCase); });我知道我可以在四个单独的调用中执行此操作(这也会更多,这会改变值):list.replaceAll(String::toLowerCase); lis...

你如何在java 8中使用lambda表达式中的条件?【代码】

我是编程初学者,我想知道如何用条件编写lambda表达式.public interface MathInterface {public int retValue(int x);}public class k1{ public static void main(String [] args) { MathInterface f1 = (int x) -> x + 4; // this is a normal lambda expression} }上面的代码应该代表数学函数: f(x)= x 4. 所以我的问题是如何编写一个涵盖此函数的lambda表达式: f(x)= x / 2(如果x可以除以2) ((x 1)/ 2)(否则) 任何帮助赞赏:) 编...

Java流API将lambda表达式存储为变量【代码】

这个标题对我来说听起来很愚蠢,但必须至少有一些聪明的方法才能达到这样的效果,我不知道怎么解释它.我需要使用sorted in stream API对数组进行排序.到目前为止,这是我的流:Arrays.stream(sequence.split(" ")).mapToInt(Integer::parseInt).boxed().sorted((a, b) -> a.compareTo(b)).forEach(a -> System.out.print(a + " "));现在我有两种不同的过程 – 升序和降序,我需要使用的排序在用户输入中指定.所以我想做的就是切换2个案...

java – 在lambda中使用类字段【代码】

参见英文答案 > Java lambdas have different variable requirements than anonymous inner classes 2个> Unexpected error using lambdas in Java 8 1个我不明白这种行为. 这段代码符合:public class A {private String s;private Function<String, String> f = e -> s;public A(String s) {this.s = s;} }但如果我做了最后的,那么我得到一个...

java8 lambda 使用学习

1. group by 使用 class BlogPost { String title; String author; BlogPostType type; int likes; } List<BlogPost> posts = Arrays.asList( ... ); Map<BlogPostType,List<BlogPost>> postsPerType=posts.stream().collect(groupingBy(BlogPost::getType)) Map<Tuple,List<BlogPost>>postsPerTypeAndAuthor =posts.stream().collect(groupingBy(post -> new Tuple(post.getType(), post.getAuthor()))) Ma...

Java 8 lambda错误:通过减少过滤器集合过滤流然后收集映射【代码】

如何编译第二种方法?我使用解决方案来减少谓词predicates.stream().reduce(Predicate::and).orElse(x -> true)我从以下主题获得此解决方案:How to apply multiple predicates to a java.util.Stream? 你知道答案,我确定:)import org.junit.Test;import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.function.Predicate; import java.util.stream.Collectors;public class StreamTest...

java – 使用库运行AWS lambda函数时的NoClassDefFoundError【代码】

我们正在开发一个项目,使用由API网关请求触发的lambda函数来处理文件.该函数然后获取S3存储桶中的文件并开始读取它.在此之前,一切都按预期工作,但是当文件读取开始时,我们收到以下错误:(...) /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.101-3.b13.24.amzn1.x86_64/jre/lib/rt.jar: error reading zip file 2017-02-06 19:15:06 <9025af71-eca0-11e6-82d2-9ff4b9184005> ERROR JRestlessHandlerContainer:339 - container failure /us...

java – 是否在lambda表达式中实例化了一个类?【代码】

参见英文答案 > What is a Java 8 Lambda Expression Compiled to? 1个我有以下方法调用,其中我传递一个lambda表达式.是否在这里隐式实例化了一个类?printStudents(roster,(Student s) -> s.getGender() == Student.Sex.MALE&& s.getAge() >= 18&& s.getAge() <= 25 );方法签名:printStudents(List<Student> roster, CheckStudent checkstudet)interface CheckStudent {boolean test(Studen...

Java8新特性之Lambda表达式【代码】

为什么需要Lambda表达式在Java中,我们无法将函数作为参数传递给一个方法,也无法声明返回一个函数方法。 Lambda表达式为Java添加了缺失的函数式编程的特性,使我们能将函数当做一等公民看待,在Java中,Lambda表达式是对象,他们必须依附于一类特别的对象类型——函数式接口。 下面是一个普通的Swing程序使用匿名内部类与Lambda的写法JFrame jFrame=new JFrame("My JFrame");JButton jButton=new JButton("My JButton");//下面是一...

java8 新特性Lambda表达式之基础语法

学习完Lambda表达式的简介之后,大概对java8 新特性Lambda表达式有所认识了 接着呢 我们从最基础的接口实现开始学习,对比一下 java8之前和之后 有啥区别 从六种不同的接口的实现 进行对比 这样更全面的认识与学习 1.1有一个参数与有返回值的接口 @FunctionalInterface public interface HavePararmHaveReturn { int Lambad(int a); } 1.2有一个参数与有返回值的实现 import LambadExpersion.Interface.HavePararmHaveRetu...

java – Iterable实现中的Lambda表达式【代码】

所以我有这段代码,我的朋友给我看了,我必须承认我不明白发生了什么.我理解lamba表达式的概念,并且已经在haskell中编写了相当多的内容,但到目前为止还没有在Java中编写过. 令我困惑的是编译器如何知道我认为是lambdaed的函数应该是Iterable接口中所需的“iterator()”.public Iterable<V> values() {return () -> {return new Iterator<V>() {private Iterator<TableEntry<K, V>> iter = iterator();@Overridepublic boolean hasNex...

LAMBDA - 相关标签