使用java模拟scala函数式编程将函数作为参数传入方法中
来源:互联网 发布:c专家编程 txt 编辑:程序博客网 时间:2024/06/15 19:41
需求:将一个list集合传入一个方法中,同时传入一个函数,根据传入函数的不同对集合做不同的处理
方法:定义一个接口,并定义一个方法option,测试中调用一个方法传入的参数是list和函数,函数就是该接口的实现类。
代码如下:
接口
package me.season.com;import java.util.ArrayList;public interface OptionMethod2 {public ArrayList<Integer> option(ArrayList<Integer> list);}
主要代码
package me.season.com;import java.util.ArrayList;public class test2 {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<>();list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);list.add(6);ArrayList<Integer> met = test2.met(list, new OptionMethod2(){@Overridepublic ArrayList<Integer> option(ArrayList<Integer> list) {ArrayList<Integer> arr = new ArrayList<>();for (Integer ii : list) {int i = ii*ii;arr.add(i);}return arr;}});for (Integer i : met) {System.out.print(i+" ");}}public static ArrayList<Integer> met(ArrayList<Integer> list,OptionMethod2 op){ArrayList<Integer> arr = op.option(list);return arr;}}
met方法中传入了一个需要处理的list集合,并new了一个接口,实现了option()方法
根据具体的实现方法,将list作了不同的处理。
正好最近学习Scala的函数式编程,就写了这么个程序来理解一下。
0 0
- 使用java模拟scala函数式编程将函数作为参数传入方法中
- 将函数作为参数类型使用
- 如何将二位数组作为参数传入函数。
- c++ std::function作为参数传入函数
- 结构体作为参数传入函数错误
- 指针作为参数传入函数的陷阱
- 谈编程中函数作为参数
- 将一个二维数组intArray[nRow][nCol]作为参数传入上述函数
- C++.net 定义类 将类对象作为函数参数传入另一个类 出现错误
- Python 将 tuples 作为参数依序传入函数 (Expanding tuples into arguments)
- 将引用作为函数参数
- js将函数作为参数
- c++ 成员函数作为函数指针参数传入
- c++ 成员函数作为函数指针参数传入
- jQuery中使用this作为函数参数
- Kotlin语言学习之将函数作为参数传递,使用双冒号::引用其他方法
- 将数组作为函数的参数的方法
- java实现scala的map方法,实现函数式编程
- 使用ls命令查看文件和目录列表
- dfs入门——棋盘问题
- homestead启动失败问题
- 从零开始的blog
- char * ,char,string与NSString转化(objec-c与c++混编基础)
- 使用java模拟scala函数式编程将函数作为参数传入方法中
- 基于 Django1.10 文档的深入学习(13)—— Making queries 之 Q objects
- 锁的原理分析
- windows 10 defender 577的错误处理方法
- TEDxStanford’s 'In the Moment' theme encourages reflection amidst tumult
- MySQL 中的数据类型介绍
- C里的递归算法
- graphviz快速上手
- Vue GET交互