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

网站如何做seo优化教程大气简约企业网站模板免费下载

网站如何做seo优化教程,大气简约企业网站模板免费下载,湖南省长沙建设工程造价站网站,公司企业查询信息平台方法引用是什么 把已经存在的方法拿过来用,当做函数式接口中抽象方法的方法体 方法引用符 :: 方法引用的条件 1.需要有函数式接口 2.被引用方法必须已经存在 3.被引用方法的形参和返回值需要跟抽象方法保持一致 4.被引用方法的功能要满足当前…

方法引用是什么

把已经存在的方法拿过来用,当做函数式接口中抽象方法的方法体

方法引用符

::

方法引用的条件

1.需要有函数式接口
2.被引用方法必须已经存在
3.被引用方法的形参和返回值需要跟抽象方法保持一致
4.被引用方法的功能要满足当前的需求

方法引用的分类

引用静态方法

格式:类名 : : 静态方法
范例: Integer : : parseInt

代码演示

集合中有以下数字,要求把他们都变成int类型
“1”,“2”,“3”,“4”,”5“ 

import java.util.ArrayList;
import java.util.Collections;
import java.util.function.Function;public class Test1 {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();Collections.addAll(list, "1", "2", "3", "4", "5");//匿名内部类形式list.stream().map(new Function<String, Integer>() {@Overridepublic Integer apply(String s) {return Integer.parseInt(s);}}).forEach(s -> System.out.println(s));//lambda表达式list.stream().map(s -> Integer.parseInt(s)).forEach(s -> System.out.println(s));//方法引用类型//map中是函数式接口//Integer类中的parseInt静态方法符合//形参和返回值与抽象方法一致//功能满足当前的需求//因此可以进行方法引用list.stream().map(Integer::parseInt).forEach(s -> System.out.println(s));//1//2//3//4//5}
}

引用成员方法

基本格式:对象 : : 成员方法 

引用本类或父类的成员方法

本类:this : : 方法名

父类:super : : 方法名

注:因为this和super处的方法不是静态的,因此引用处也不能是静态 

代码演示

设置一个界面,上面有两个按钮,对按钮利用方法引用的形式添加动作监听,要求涉及本类中的方法和父类中的方法

App类

public class App {public static void main(String[] args) {new LoginJFrame();}
}

LoginJFrame类继承MyJFrame

import javax.swing.*;
import java.awt.event.ActionEvent;public class LoginJFrame extends MyJFrame {JButton go1;JButton go2;public LoginJFrame() {//初始化界面initFrame();//定义按钮组件go1 = new JButton("go(本类)");go1.setBounds(180, 80, 150, 50);this.getContentPane().add(go1);go2 = new JButton("go(父类)");go2.setBounds(30, 80, 150, 50);this.getContentPane().add(go2);//除了实现接口外//还可以利用方法引用给按钮设置动作监听go1.addActionListener(this::method1);//本类中的go被点击了go2.addActionListener(super::method2);//父类中的go被点击了}public void method1(ActionEvent e) {System.out.println("本类中的go被点击了");}//定义方法初始化界面private void initFrame() {//设置大小this.setSize(400, 300);//设置置顶this.setAlwaysOnTop(true);//设置居中this.setLocationRelativeTo(null);//设置关闭模式this.setDefaultCloseOperation(3);//设置解除默认居中放置,使用坐标决定组件位置this.setLayout(null);//设置界面可视this.setVisible(true);}}

 MyJFrame类继承JFrame

import javax.swing.*;
import java.awt.event.ActionEvent;public class MyJFrame extends JFrame {public void method2(ActionEvent e) {System.out.println("父类中的go被点击了");}
}
引用其他类的成员方法

格式:其他类对象 : : 方法名

代码演示

集合中有一些名字,按照要求过滤数据
数据:"张无忌","周芷若","赵敏","张强","张三丰"
要求:只要以张开头,而且名字是3个字的 

测试类

import java.util.ArrayList;
import java.util.Collections;
import java.util.function.Predicate;public class Test {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();Collections.addAll(list, "张无忌", "周芷若", "赵敏", "张强", "张三丰");//匿名内部类list.stream().filter(new Predicate<String>() {@Overridepublic boolean test(String s) {return s.startsWith("张") && s.length() == 3;}}).forEach(s -> System.out.println(s));//lambda表达式list.stream().filter(s -> s.startsWith("张") && s.length() == 3).forEach(s -> System.out.println(s));//方法引用//需要先在别的类(StringOperation)中定义一个方法(stringJudge)//使得该方法//形参和返回值需跟抽象方法一致//功能满足当前的需求list.stream().filter(StringOperation::stringJudge).forEach(s -> System.out.println(s));//张无忌//张三丰}
}

 StringOperation 类

public class StringOperation {public static boolean stringJudge(String s){return s.startsWith("张")&&s.length()==3;}
}

引用构造方法

格式:类名 : : new
范例:student : : new

代码演示

集合里面存储姓名和年龄,比如:张三,23
要求:将数据封装成Student对象并收集到List集合中 

测试类 

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.function.Function;
import java.util.stream.Collectors;public class Test {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();Collections.addAll(list, "张三,23", "李四,24", "王五,25");//匿名内部类List<Student> newList1 = list.stream().map(new Function<String, Student>() {@Overridepublic Student apply(String s) {return new Student(s.split(",")[0],Integer.parseInt(s.split(",")[1]));}}).collect(Collectors.toList());//lambda表达式List<Student> newList2 = list.stream().map(s -> new Student(s.split(",")[0],Integer.parseInt(s.split(",")[1]))).collect(Collectors.toList());//方法引用List<Student> newList3 = list.stream().map(Student::new).collect(Collectors.toList());System.out.println(newList3);//[Student{name='张三', age=23}, Student{name='李四', age=24}, Student{name='王五', age=25}]}
}

Student类

public class Student {private String name;private int age;public Student() {}//定义一个构造方法//形参和返回值跟抽象方法一致//功能要满足当前的需求public Student(String s){this.name = s.split(",")[0];this.age = Integer.parseInt(s.split(",")[1]);}public Student(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}
}

其他引用方式

使用类名引用成员方法

格式:类名 : : 成员方法
范例:String : : substring

此方法引用有不同的规则:
1.需要有函数式接口
2.被引用的方法必须已经存在
3.被引用方法的形参,需要跟抽象方法的第二个形参到最后一个形参保持一致,返回值需要保持一致。
4.被引用方法的功能需要满足当前的需求

抽象方法形参的详解:
第一个参数:表示被引用方法的调用者,决定了可以引用哪些类中的方法
在Stream流当中,第一个参数一般都表示流里面的每一个数据。假设流里面的数据是字符串,那么使用这种方式进行方法引用,只能引用String这个类中的方法
第二个参数到最后一个参数:跟被引用方法的形参保持一致,如果没有第二个参数,说明被引用的方法需要是无参的成员方法  

弊端:

不能引用所有类中的成员方法,若抽象方法的第一个参数是A类型的,只能引用A类中的方法 

代码演示

集合里面一些字符串,要求变成大写后进行输出 

import java.util.ArrayList;
import java.util.Collections;
import java.util.function.Function;public class Test1 {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();Collections.addAll(list, "aaa", "bbb", "ccc");//匿名内部类list.stream().map(new Function<String, String>() {@Overridepublic String apply(String s) {return s.toUpperCase();}}).forEach(s -> System.out.println(s));//lambda表达式list.stream().map(s -> s.toUpperCase()).forEach(s -> System.out.println(s));//方法引用list.stream().map(String::toUpperCase).forEach(s -> System.out.println(s));//AAA//BBB//CCC}
}
引用数组的构造方法 

格式:数据类型[ ] : : new
范例:int[ ] : : new

代码演示

集合中存储一些整数,收集到数组当中 

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.function.IntFunction;public class Test2 {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<>();Collections.addAll(list, 1, 2, 3, 4, 5);//匿名内部类Integer[] arr1 = list.stream().toArray(new IntFunction<Integer[]>() {@Overridepublic Integer[] apply(int value) {return new Integer[value];}});//lambda表达式Integer[] arr2 = list.stream().toArray(value -> new Integer[value]);//方法引用Integer[] arr3 = list.stream().toArray(Integer[]::new);System.out.println(Arrays.toString(arr1));System.out.println(Arrays.toString(arr2));System.out.println(Arrays.toString(arr3));//[1, 2, 3, 4, 5]}
}

文章转载自:

http://j0kycNwW.ygqjn.cn
http://Ltp6NIEb.ygqjn.cn
http://GUVN4jHi.ygqjn.cn
http://QRXGey2a.ygqjn.cn
http://RRJiMHbm.ygqjn.cn
http://TF13VFqR.ygqjn.cn
http://IoCHe79I.ygqjn.cn
http://HUTzxSnL.ygqjn.cn
http://dwu0r45V.ygqjn.cn
http://AcoeKybz.ygqjn.cn
http://8V49QFSM.ygqjn.cn
http://WqRMBT7o.ygqjn.cn
http://P3lQYfK4.ygqjn.cn
http://RQQJaRHp.ygqjn.cn
http://bVyVbT21.ygqjn.cn
http://U1jGDW67.ygqjn.cn
http://m9utiOf7.ygqjn.cn
http://qsBY1sCF.ygqjn.cn
http://rS7OAzYF.ygqjn.cn
http://fQcHxQ14.ygqjn.cn
http://X7X7kNl0.ygqjn.cn
http://JWAKQ33a.ygqjn.cn
http://FDQufunR.ygqjn.cn
http://QyhR9VYd.ygqjn.cn
http://epK6HnBY.ygqjn.cn
http://ItFpJJXu.ygqjn.cn
http://RLWkb8an.ygqjn.cn
http://vpZLKpcU.ygqjn.cn
http://VFW4qkYJ.ygqjn.cn
http://ZowjqLPl.ygqjn.cn
http://www.dtcms.com/wzjs/656110.html

相关文章:

  • wdcp 网站建设品牌网站建设信息
  • 网站网站平台建设方案网站设计培训成都哪家好
  • 广告设计公司相城黄埭网站关键词优化方式
  • 域名主机网站导航摄影网站 蜂鸟
  • 网站设计师加油站在线代理浏览器网站
  • 游戏发号网站源码长春专业企业网站建设价格
  • c程序设计课程网站建设论文建设工程竣工规划局网站
  • 淘客网站难做吗WordPress知更鸟主题怎样安装
  • 高端网站建设哪些好上海企业建站推荐
  • 优秀网站设计案例分析wordpress文档主题
  • 做自己的网站的好处长沙中小企业网站建设
  • 潍坊市建设工程管理处网站南通房产网
  • 信阳网站开发公司电话页面设计零基础
  • 荣茂网站建设建网站需要什么知识
  • 用狐狸做logo的网站青岛住房和城乡建设部网站
  • 电子商务及网站建设珠海网站建设乐云seo在线制作
  • 河北省建设注册中心网站首页做网站app需要懂些什么软件
  • 微信公众号私自建设电影网站黄页 网站模板
  • 网络精准营销推广常用的seo查询工具有哪些
  • 什么网站发布找做效果图的sae 网站备案
  • 华龙建设部网站查不到网页开发外包
  • 网站上怎么做全景看图宁波建设监理管理协会网站
  • 广告网站设计郑州代理记账网站建设
  • 网站开发一定得用html吗易语言可以做网站么
  • 5g云网站建设提供做网站
  • 网站的作用惠州搜索引擎seo
  • 建设公司网站的会计分录合肥最好的网站建设
  • 怎么做点击图片进入网站威海医院网站制作
  • 一家专门做护肤的网站网站开发与维护专业要学什么
  • 做一个英文网站多少钱深圳网络营销网站建设