Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Kotlin中实例化函数类型的最佳实践_Kotlin_Lambda_Function Reference - Fatal编程技术网

在Kotlin中实例化函数类型的最佳实践

在Kotlin中实例化函数类型的最佳实践,kotlin,lambda,function-reference,Kotlin,Lambda,Function Reference,我想知道,在可能的情况下,使用新的代码块(lambda表达式)传递函数作为引用还是使用对现有声明的可调用引用传递函数作为引用(根据最佳实践使用干净的代码)更好 因此,最好使用 jobRepository.findAll(spec).map(Job::toDto) 或 官方Kotlin语言参考中的章节未使用您的版本: jobRepository.findAll(spec).map { it.toDto() } 我还认为第一个选项更容易阅读,因为您可以看到调用该方法的类型 最后,我同意罗兰的意

我想知道,在可能的情况下,使用新的代码块(lambda表达式)传递函数作为引用还是使用对现有声明的可调用引用传递函数作为引用(根据最佳实践使用干净的代码)更好

因此,最好使用

jobRepository.findAll(spec).map(Job::toDto) 

官方Kotlin语言参考中的章节未使用您的版本:

jobRepository.findAll(spec).map { it.toDto() }
我还认为第一个选项更容易阅读,因为您可以看到调用该方法的类型

最后,我同意罗兰的意见,即在您的特定场景中使用更具可读性的版本可能是最好的选择。

官方Kotlin语言参考中的章节没有使用您的版本:

jobRepository.findAll(spec).map { it.toDto() }
我还认为第一个选项更容易阅读,因为您可以看到调用该方法的类型


最后,我同意罗兰的意见,即在您的特定场景中使用更具可读性的版本可能是最好的选择。

在这种情况下,我会对您说任何更具可读性的版本。。。有时您有更长的类名,那么
it.*
-符号更具可读性。。。否则我(个人当然)更喜欢函数引用。。。这取决于。。。有点相关:我会说,在这种情况下,任何更可读的给你。。。有时您有更长的类名,那么
it.*
-符号更具可读性。。。否则我(个人当然)更喜欢函数引用。。。这取决于。。。有点相关: