gpt4 book ai didi

java - 如何在 Kotlin 中将函数式接口(interface)操作作为参数传递?

转载 作者:太空宇宙 更新时间:2023-11-04 10:14:13 25 4
gpt4 key购买 nike

考虑到 Java 中的函数式接口(interface):

public interface Condition<T> {
boolean check(T target);
}

该接口(interface)产生的操作可以作为参数传递给类的构造函数:

new ValidationRule<>(description,problem,target-> target.length() >= 2)

第三个参数是 Condition 接口(interface),其中要执行的操作明确指定为:

target -> target.length() >= 2

我在 Kotlin 中复制此模式时遇到问题。在 kotlin 中如何做到这一点?有没有 kotlin 特定的方法来做到这一点。

PS 我是 Kotlin 新手。

最佳答案

应该很简单

typealias Condition<T> = (T) -> Boolean

class ValidationRule<T>(val description: T, val problem: T, val condition: Condition<T>)

val validationRule = ValidationRule(description, problem, { target -> target.length() >= 2 })

关于java - 如何在 Kotlin 中将函数式接口(interface)操作作为参数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51915953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com