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

四平专业网站设计网站建设规范管理工作

四平专业网站设计,网站建设规范管理工作,郑州网站推广信息,舟山网站制作应用场景: 第一次程序员A写好了个基础的遍历方法: public class Demo1 {public static void main(String[] args) {//假设main方法为程序员B写的,此时需要去调用A写好的一个遍历方法//1.如果此时B突然发现想将字符串以小写的形式打印出来,则…

 应用场景:

第一次程序员A写好了个基础的遍历方法:

public class Demo1 {public static void main(String[] args) {//假设main方法为程序员B写的,此时需要去调用A写好的一个遍历方法//1.如果此时B突然发现想将字符串以小写的形式打印出来,则去请求A修改LinkedList<String > list=new LinkedList<>();list.add("Acb");list.add("Vudh");list.add("hsuU");print(list);}//A程序员写的遍历方法public static void print(LinkedList<String> list){for (String s : list) {System.out.println(s);}}
}

 第二次程序员A完成了字符转小写的遍历方法:

 public static void main(String[] args) {//假设main方法为程序员B写的,此时需要去调用A写好的一个遍历方法//1.如果此时B突然发现想将字符串以小写的形式打印出来,则去请求A修改LinkedList<String > list=new LinkedList<>();list.add("Acb");list.add("Vudh");list.add("hsuU");print(list);}//A程序员写的遍历方法public static void print(LinkedList<String> list){for (String s : list) {System.out.println(s.toLowerCase());}}

第三次程序员A直接将接口调用给了B,B可以根据需求自己去实现打印形式:

 public static void main(String[] args) {//假设main方法为程序员B写的,此时需要去调用A写好的一个遍历方法//1.如果此时B突然发现想将字符串以小写的形式打印出来,则去请求A修改LinkedList<String > list=new LinkedList<>();list.add("Acb");list.add("Vudh");list.add("hsuU");print(list, new Consumer<String>() {@Overridepublic void accept(String s) {System.out.println(s.toUpperCase());}});}//A程序员写的遍历方法,将consumer接口调用给Bpublic static void print(LinkedList<String> list,Consumer<String> consumer ){for (String s : list) {consumer.accept(s);}}

内容补充:

        

  1. 定义与概念
    • 在 Java 中,Consumer接口是一个函数式接口,它属于java.util.function包。函数式接口是指只包含一个抽象方法的接口,Consumer接口中的抽象方法是void accept(T t)。这个方法接收一个类型为T的参数,并且没有返回值。它主要用于对给定的输入参数进行某种操作,比如打印、修改等,但不返回结果。
  2. 使用场景
    • 数据消费:可以用于遍历一个集合,对集合中的每个元素进行某种操作。例如,有一个包含整数的列表,想要打印出列表中的每个元素,可以使用Consumer接口。
    • 对象属性修改:在面向对象编程中,用于修改对象的某些属性。比如,有一个Person类,包含nameage属性,通过Consumer接口可以修改Person对象的age属性。
  3. 示例代码
    • 简单的打印操作

      import java.util.ArrayList;
      import java.util.List;
      import java.util.function.Consumer;
      public class ConsumerExample {public static void main(String[] args) {List<Integer> numberList = new ArrayList<>();numberList.add(1);numberList.add(2);numberList.add(3);// 使用Consumer接口打印列表中的每个元素Consumer<Integer> printConsumer = num -> System.out.println(num);numberList.forEach(printConsumer);}
      }
      
    • 在这个示例中,首先创建了一个包含整数的ArrayList。然后定义了一个Consumer类型的变量printConsumer,它的accept方法实现是通过 Lambda 表达式num -> System.out.println(num)来定义的,即对于传入的整数进行打印操作。最后,使用forEach方法遍历numberList,并将每个元素传递给printConsumeraccept方法进行打印。
    • 对象属性修改示例
      class Person {String name;int age;public Person(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public int getAge() {return age;}
      }
      public class ConsumerObjectExample {public static void main(String[] args) {Person person = new Person("Alice", 20);// 定义一个Consumer来修改Person对象的年龄Consumer<Person> ageModifier = p -> p.age = p.age + 1;ageModifier.accept(person);System.out.println("修改后的年龄: " + person.getAge());}
      }
      
    • 在这里,定义了一个Person类,包含nameage属性。在main方法中创建了一个Person对象。然后定义了一个Consumer,它的accept方法实现是将传入的Person对象的年龄加 1。最后通过accept方法修改person对象的年龄,并打印出修改后的年龄。
  4. 与其他函数式接口的比较
    • Function接口相比,Function接口有返回值,其抽象方法是R apply(T t)R是返回值类型,而Consumer接口没有返回值。例如,Function可以用于将一个整数列表中的每个元素进行平方运算并返回新的列表,Consumer则更侧重于对元素进行操作而不返回新的计算结果。
    • Supplier接口不同,Supplier接口没有输入参数,其抽象方法是T get(),主要用于提供一个对象或值,而Consumer是消费一个已经存在的对象或值。

用Java的Consumer接口实现一个统计列表中元素个数的程序

在Java 8中,如何使用Consumer接口与Stream API结合?

除了Consumer接口,Java中还有哪些常用的函数式接口?

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

相关文章:

  • 鸿兴网站建设公司网站界面怎么做
  • 长春网站优化做淘宝客网站的流程
  • 南昌网站建设业务河源市住房城乡和建设局网站
  • 西安建网站公司2022年免费云服务器
  • 庆阳网站设计制作大连旅游网站建设大概多钱
  • 寻求南宁网站建设人员个人印章在线制作网站
  • 厦门网站设计排行默认网站预览能能显示建设中
  • ps 矢量素材网站品牌推广方案ppt
  • 外贸网站推广中山wordpress建设网站
  • 营销类网站建设天津网络推广网站建设公司
  • 外贸网站定制开发百度关键词seo推广
  • 海口网站建设价格wordpress怎么在虚拟主机上搭建
  • idea网站开发网站建设招聘简介
  • 做网站看好金石网络南阳网站建设哪家专业
  • html5 国外网站做推广的网站有哪些
  • 做统计的网站做企业网站需要什么
  • 福州餐饮网站建设网站中数据查询如何做
  • 室内设计软件下载网站大全360优化大师旧版
  • 宁海县建设局网站计算机网络培训课程
  • 长沙网站优化推广方案工业软件开发技术就业前景
  • 楚雄州城乡建设局网站线上编程课
  • 三门峡市住房的城乡建设局网站建站软件
  • wordpress文章图片本地化在线网站seo诊断
  • 医疗类网站前置审批烟台网站seo外包
  • 网站建设 成本分析英文网站数据库如何建设
  • 响应式网站文章地图网站抓取
  • 网站手机端优化外贸网站建设定制开发
  • 如何维护自己的网站苏州注册公司多少钱
  • 东莞石龙网站建设定制flash网站建设技术是什么
  • 顶尖网站建设建设银行信用卡进度查询官方网站