函数对象
来源:互联网 发布:淘宝闲鱼拍卖靠谱吗 编辑:程序博客网 时间:2024/06/09 21:01
定义
一种将函数作为参数传递的独创方法是注意到对象既包含数据也包含方法,于是我们可以定义一个没有数据而只有一个方法的类,并传递该类的一个实例。事实上,一个函数通过将其放在一个对象内部而被传递,这样的对象通常叫做传递对象。给人的感觉有点像函数式接口,只是后者可以有常量定义。貌似与C语言的函数指针差不多。
示例代码
package burnigT;import java.util.Comparator;class CaseInsensetiveCompare implements Comparator<String>//这里注意泛型{ @Override public int compare(String o1, String o2) { return o1.compareToIgnoreCase(o2); }}public class FunctionObject { public static <AnyType> AnyType FindMax(AnyType[] arr,Comparator<? super AnyType> cmp) { int maxIndex = 0; for (int i = 1; i < arr.length;i++) { if (cmp.compare(arr[i],arr[maxIndex]) > 0); maxIndex = i; } return arr[maxIndex]; } public static void main(String[] args) { String[] str = {"Hello world","Hi","HIGH"}; System.out.println(FindMax(str,new CaseInsensetiveCompare())); }}
运行结果:
HIGH
阅读全文
0 0
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 对象 函数
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象
- 函数对象~
- 函数对象
- mysql 数值运算符和函数
- 设计模式
- 第十四篇:自己动手实现图的BFS和DFS(附完整源码)
- CS Academy Distinct Neighbours 经典DP
- zzuli 2177题
- 函数对象
- 爆炸的动画特效含倒计时
- 自定义Log工具——管理你的Log日志
- 第十五篇:二叉排序树C实现(含完整源码)
- uC/OS-II系统学习笔记(4)—— uC/OS-II概述上篇
- CentOS7二进制文件安装MySQL5.6
- 第十六篇:内部排序之一:插入排序和希尔排序的N中实现(不断优化,附完整源码)
- 腾讯云人脸识别免费体验
- JavaScript常用数组处理函数【属性+方法】