Kotlin 中缀函数(infix)

使用 infix 修饰的函数,叫 中缀函数 。可 省去 . 和 (), 直接 通过 名 调用。

比如,10 shl 2 位左移操作shl就是 中缀函数,等同于 10.shl(2)。

声明格式

kotlin 复制代码
infix fun methodName(argName: String)

即:类成员函数 或 扩展函数,增加 infix 修饰即可。

中缀函数 声明要求:
  1. 函数 必须是类型的 成员函数 或 扩展函数;
  2. 有且仅有 一个参数;
  3. 函数参数 不能是 可变长参数(vararg),也不能有 默认值。
Int 位操作源码

查看 Int 位操作 相关函数源码,可知 都是 中缀函数:

kotlin 复制代码
public class Int private constructor() : Number(), Comparable<Int> {

    public infix fun shl(bitCount: Int): Int

    public infix fun shr(bitCount: Int): Int

}

文档

相关推荐
yuniko-n2 小时前
【JUC】wait 和 sleep
java·开发语言
kimnoic3 小时前
Python常见模块及其用法示例详解
开发语言·python
程序员-Benothing3 小时前
Linux文本排序统计命令:sort、uniq、wc、cut、tr实战
java·开发语言·算法
CRMEB3 小时前
前后端技术栈全面换代!CRMEB 多商户(Java)v3.0更新预告
java·开发语言
JQLvopkk3 小时前
HslCommunication,一个工具测遍所有 PLC
开发语言·人工智能·c#·交互
事圆则缓3 小时前
Android 崩溃优化与应用稳定性全解析:Crash、ANR、OOM 到线上治理
android
阿狗童鞋3 小时前
Python爬虫进阶实战指南
开发语言·爬虫·python
下页、再停留3 小时前
【C#桌面客户端系列学习-7】数据查询展示
开发语言·c#·visual studio
ZHOUPUYU3 小时前
PHP 高级技术实战:从原理到高并发架构落地
android·性能优化·php
皓月盈江3 小时前
Go读写TXT文件
开发语言·后端·golang·go·读写txt文件·bufio·go读写txt