一、高阶函数的基本概念
1.传入或者返回函数的函数(传入是函数,返回也是函数)
2.函数引用最常见的方式,”:: println”
3.带有接收者Receiver的引用pdfPrinter::println
二、看一下入门的例子
package net.println.kotlin.chapter5.basics
/**
* @author:wangdong
* @description:kotlin的高阶函数
*/
/**
* 类名::方法,就可以拿到方法的引用了
*/
fun main(args: Array<String>) {
//第一种:高阶函数
//函数引用::
args.forEach(::println)
//第二种:类名引用函数
//引用hello方法
val helloWorld = Hello::world
//过滤空字符串,保留非空的字符串
args.filter(String::isNotEmpty)
//第三种:调用者(实例)引用函数
//构造一个实例,用实例去调用方法,打印pdf
val pdfPrinter = PdfPrinter()
args.forEach(pdfPrinter::println)
}
/**类成员的例子*/
class Hello{
//定义一个方法
fun world(){
println("Hello World")
}
}
/**定义一个pdf的打印语句类*/
class PdfPrinter{
fun println(any: Any){
kotlin.io.println(any)
}
}