s-day07-常用的函数式接口_Consumer

This commit is contained in:
2026-08-08 11:47:34 +08:00
parent 9774ac3f0b
commit 59a3c1f0c8
5 changed files with 54 additions and 4 deletions
@@ -0,0 +1,34 @@
package com.inmind.functional_consumer03;
import java.util.function.Consumer;
/*
在jdk1.8之后,java提供了一些常用的函数式接口供开发人员直接使用.
常用的函数式接口_Consumer
Interface Consumer<T>
抽象方法:
void accept(T t) 对给定的参数执行此操作。
注意:
1.Consumer表示一个消费者.只接受一个参数,没有返回值.
2.什么时候要使用Consumer接口??
当我们开发人员想自定义一个函数式接口,并且该接口中要定义一个接收一个参数,没有返回值的方法
需求:定义出一个使用常用函数式接口的方法,并对字符串进行消费操作(大写打印,小写打印)
*/
public class Demo05 {
public static void main(String[] args) {
//1.大写打印(lambda全写形式)
printString((String s)->{
System.out.println(s.toUpperCase());
},"aBcD");
//2.小写打印(lambda省略形式)
printString(s-> System.out.println(s.toLowerCase()),"aBcD");
}
public static void printString(Consumer<String> consumer, String s) {
consumer.accept(s);
}
}
@@ -0,0 +1,6 @@
package com.inmind.functional_consumer03;
@FunctionalInterface
public interface MyInterface1 {
void accept(String s);
}
@@ -0,0 +1,6 @@
package com.inmind.functional_consumer03;
@FunctionalInterface
public interface MyInterface2 {
void accept(Integer i);
}
@@ -0,0 +1,8 @@
package com.inmind.functional_consumer03;
import com.inmind.lambda01.Student;
@FunctionalInterface
public interface MyInterface3 {
void accept(Student s);
}
@@ -1,4 +0,0 @@
package com.inmind.functional_interface02;
public class Demo05 {
}