当前位置: 首页 > news >正文

新建网站做优化怎样营销建设网站

新建网站做优化,怎样营销建设网站,注册安全工程师注册管理系统官网,seo搜索引擎优化兴盛优选定义 什么是合格的函数?无论多少次执行函数,只要输入一样,输出就不会改变 对象方法的简写 其实在类中,我们很多参数中都有一个this,被隐藏传入了 函数也可以作为对象传递,lambda就是很好的例子 函数式接口中…

定义

  • 什么是合格的函数?
  • 无论多少次执行函数,只要输入一样,输出就不会改变

对象方法的简写

其实在类中,我们很多参数中都有一个this,被隐藏传入了

在这里插入图片描述

函数也可以作为对象传递,lambda就是很好的例子

函数式接口中经常这么使用,定义方法名,具体的方法实现等待外界传入

在这里插入图片描述

示例

客户端有操作的函数
服务器端有数据

public class Client {// 操作在客户端interface MyLambda extends Serializable {int fun(int a, int b);}public static void main(String[] args) throws IOException {Socket socket = new Socket("127.0.0.1",8888);MyLambda lambda = (a, b) -> a + b;OutputStream outputStream = socket.getOutputStream();ObjectOutputStream objectOutputStream = new ObjectOutputStream(outputStream);objectOutputStream.writeObject(lambda);}
}

服务器端

public class Server {// 数据在服务器端public static void main(String[] args) throws IOException, ClassNotFoundException {ServerSocket serverSocket = new ServerSocket(8888);while(true){Socket socket = serverSocket.accept();InputStream inputStream = socket.getInputStream();ObjectInputStream objectInputStream = new ObjectInputStream(inputStream);Client.MyLambda myLambda = (Client.MyLambda)  objectInputStream.readObject();System.out.println(myLambda.fun(1,2));}}
}

函数对象优点1-行为参数化

操作的对象一直,但是操作的方式千千万,

  • 我们可以将共同的部分提取为一个方法
  • 将不同的操作的行为,将行为作为参数传递给这个方法
  • 上述的操作的方式就是行为参数化

过滤接口-定义过滤行为

/*** 学生过滤接口*/
interface StudentFilter {boolean test(Student student);
}

过滤器

/*** 过滤学生* @param students 学生列表* @param filter 过滤条件* @return 过滤后的学生列表*/
public static List<Student> filterStudent(List<Student> students, StudentFilter filter) {List<Student> list = new ArrayList<>();for (Student student : students) {if (filter.test(student)) {list.add(student);}}return list;
}

使用的时候传递行为即可

  • 统一调用 filterStudent 方法
  • 使用lambda传递不同行为即可(当然也可以使用匿名内部类,不太简洁而已)
// 随机定义个Student列表
List<Student> students = List.of(new Student("张三", 18, "男"),new Student("李四", 19, "女"),new Student("王五", 20, "男"),new Student("赵六", 21, "女")
);
System.out.println("学生列表:");
students.forEach(System.out::println);// 过滤出年龄大于18的学生
List<Student> ageFilter = filterStudent(students, student -> student.getAge() > 18);
System.out.println("年龄大于18的学生:");
ageFilter.forEach(System.out::println);// 过滤出性别为男的学生
List<Student> genderFilter = filterStudent(students, student -> "男".equals(student.getGender()));
System.out.println("性别为男的学生:");
genderFilter.forEach(System.out::println);

函数对象优点2-延迟执行

函数对象的使用在框架中是十分常见的,例如我们常用日志框架

  • 根据不同的日志级别执行不同的日志输出

函数对象

在这里插入图片描述

使用函数对象,存储日志

在这里插入图片描述

http://www.yayakq.cn/news/17084/

相关文章:

  • 成都建设二维码网站华为网站建设建议
  • 上海网站建设开发哪家WordPress关闭登录
  • 上海企业免费建站网站建设制作定制
  • 广西建设厅官方网站电话品牌建设网站公司排名
  • 做网站的照片要多大像素杭州seo 云优化科技
  • 网站建设演示ppt模板下载玉溪市城乡建设局网站
  • 做HH的网站电影项目做产品众筹哪个网站好
  • 国际网站怎么建设怎么看网站备案号
  • 兖州网站开发福建微网站建设公司
  • 做国外有那些网站比较好的wordpress 菜单浮动
  • 做彩票网站要多大服务器wordpress文章自定义字段开发
  • 建设娱乐城网站wordpress学院
  • 网站解析后怎么解决方法乐山市住房和城乡建设局网站
  • 扬中网站建设价格品牌seo是什么
  • 从事网站类网站建设的网站建设相关的博客有哪些
  • 从化低价网站建设安康做网站的公司
  • 广西柳州科技学校网站建设动易网站免费版
  • 百度地图 添加到网站深圳seo优化排名公司
  • 昆明网站搭建多少钱宝塔织梦网站建设
  • 三元里网站建设wordpress底部美化
  • 建立网站的费用策划制作自己网站有什么软件
  • seo外链技巧济南网站建设与优化
  • 上海做网站报价山西seo博客
  • 互联网网站模块杭州今天查出多少阳性
  • 有做网站代理运营的吗做电子商务网站 除了域名 网页设计 还有服务器 和网站空间
  • 均安公司网站建设校园图书回收网站建设
  • 搭建商城网站学产品设计的可以找什么工作
  • 西安网站建设雄账号管庄网站建设
  • 查手表价格的网站wordpress下划线函数
  • 唐山网站排名推广做网站需要啥