----
之前讲的定义扩展函数 , 扩展属性 , 都是为 非空类型 定义的 ,
如果要为 可空类型 定义扩展函数 , 则需要在 扩展函数 中 处理时 , 要多考虑一层 接收者 this 为空 的 情况...;
注意下面的调用细节 :
如果定义的 扩展函数 是 为 非空类型定义的 , 可空类型变量 想要调用该 扩展函数 , 在调用时使用 " ?....非空类型扩展函数
如果定义的 扩展函数 是为 可空类型定义的 , 可空类型变量 想要调用该 扩展函数 , 在调用时直接使用 " . " 进行调用即可 ;
可空类型实例对象.可空类型扩展函数
代码示例...123abc
this = null, string = abc, 接收者为空
abc
三、使用 infix 关键字修饰单个参数扩展函数的简略写法
----
如果 扩展函数 只有 一个参数 , 并且在...函数名 函数参数
也可以使用 传统方式调用 :
接收者.函数名(函数参数)
Map 中 创建 的 Pair 实例对象 的 to 函数 , 就是 被 infix 修饰的 泛型扩展函数 , 最终产生的是