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

}

文档

相关推荐
摘星编程6 分钟前
【RAG+LLM实战指南】如何用检索增强生成破解AI幻觉难题?
android·人工智能
星河耀银海13 分钟前
C++开发入门——环境搭建与第一个程序
开发语言·c++·策略模式
还不秃顶的计科生16 分钟前
defaultdict讲解
开发语言·javascript·ecmascript
花归去22 分钟前
echarts 柱状图包含右侧进度
开发语言·前端·javascript
wjs202423 分钟前
Java 数组
开发语言
火柴就是我24 分钟前
学习一些常用的混合模式之BlendMode. dst
android·flutter
码农水水24 分钟前
大疆Java面试被问:TCC事务的悬挂、空回滚问题解决方案
java·开发语言·人工智能·面试·职场和发展·单元测试·php
遥不可及zzz29 分钟前
解决 Google Play 提示的 16KB 内存页面大小对齐问题:通过升级 Android Gradle 插件(AGP)
android
qq_25183645729 分钟前
基于java Web 个人网站系统设计与实现
java·开发语言·数据库
Eternity∞40 分钟前
基于Linux系统vim编译器情况下的C语言学习
linux·c语言·开发语言·学习·vim