Resumen de aprendizaje de Java: 25

Interfaz funcional incorporada

Hay a lo sumo 4 tipos de métodos para la interfaz funcional que pueden aparecer : hay valores de retorno con parámetros, no hay valores de retorno con parámetros, no hay valores de retorno con parámetros y juicio de verdadero y falso.
Para simplificar la definición de desarrolladores y unificar la operación, Java proporciona un nuevo paquete de desarrollo: java.util.function, y proporciona las siguientes cuatro interfaces funcionales principales en este paquete.

1. Interfaz funcional (función)

La interfaz se define de la siguiente manera:

@FunctionalInterface
public interface Function<T,R>{
    public R apply(T t);
}

Función principal: esta interfaz necesita recibir un parámetro y devolver un resultado de procesamiento.

Ejemplo: usar una interfaz funcional funcional. Este programa utilizará la referencia de interfaz de función, método de la clase String "public boolean comienza con el método (String str)"

package Project.Study.BuiltInFunctionalInterface;
import java.util.function.*;

public class Test1 {
    public static void main(String args[]){
        Function<String,Boolean>fun="Hello World"::startsWith;
        //public boolean startsWith(String prefix, int toffset)方法
        //startsWith() 方法用于检测字符串是否以指定的前缀开始。
        System.out.println(fun.apply("H"));
        System.out.println(fun.apply("e"));
        System.out.println(fun.apply("ll"));
    }
}
//结果:
//true
//false
//false

2. Interfaz de consumidor (consumidor)

La interfaz se define de la siguiente manera:

@FunctionalInterface
public interface Consumer<T>{
    public void accept(T t);
}

Función principal: esta interfaz solo es responsable de recibir datos (no es necesario devolverlos al hacer referencia a los datos) y no devuelve resultados de procesamiento.

Ejemplo: usar una interfaz de consumidor.

package Project.Study.BuiltInFunctionalInterface;
import java.util.function.Consumer;

public class Test2 {
    public static void main(String args[]){
        Consumer<String>cons=System.out::println;
        cons.accept("Hello World");
    }    
}
//结果
//Hello World

Este programa utiliza la interfaz del consumidor para recibir una referencia al método System.out.println (). Esta definición de método necesita recibir datos de cadena, pero no devolverá ningún resultado.

3. Interfaz de suministro (proveedor)

La interfaz se define de la siguiente manera:

@FunctionalInterface
public interface Supplier<T>{
    public T get();
}

Función principal: esta interfaz no recibe parámetros, pero puede devolver resultados.

Ejemplo: interfaz de suministro. Este programa utiliza el método toUpperCase () de la clase String (public String toUpperCase ()).

package Project.Study.BuiltInFunctionalInterface;
import java.util.function.Supplier;

public class Test3 {
    public static void main(String args[]){
        Supplier<String>sup="Hello World"::toUpperCase;
        //toUpperCase的意思是将所有的英文字符转换为大写字母,只对英文字母有效,对除了A~Z和a~z的其余字符无任何效果
        System.out.println(sup.get());}
}
//结果
//HELLO WORLD

4. Interfaz de afirmación (predicado)

La interfaz se define de la siguiente manera:

@FunctionalInterface
public interface Predicate<T,R>{
    public boolean test(T t);
}

El papel principal: juzgar el uso

Ejemplo: interfaz asertiva. Este programa se referirá al método equalsIgnoreCase () en la clase String (public boolean equalsIgnoreCase (String str)).

package Project.Study.BuiltInFunctionalInterface;
import java.util.function.Predicate;

public class Test4 {
    public static void main(String args[]){
        Predicate<String>pre="Hello World"::equalsIgnoreCase;
        //执行忽略大小写的比较,当比较两个字符串时,它会认为A-Z和a-z是一样的
        System.out.println(pre.test("HELLO WORLD"));
    }
}
//结果:
//true
49 artículos originales publicados · Me gustó 25 · Visitas 1523

Supongo que te gusta

Origin blog.csdn.net/weixin_45784666/article/details/104956600
Recomendado
Clasificación