Kotlin重载运算符operator

本文介绍了Kotlin中如何通过运算符重载实现类与类、类与Int之间的加法、减法、乘法等操作,以及自定义get、compareTo方法的重载。示例代码展示了Point类如何通过operator关键字实现加法,并扩展Int类型使其能与Point对象相加。此外,还展示了如何重载get方法和compareTo方法,提供更直观的比较操作。

转载请标明出处:http://blog.youkuaiyun.com/zhaoyanjun6/article/details/120496977
本文出自【赵彦军的博客】

定义

运算符重载就是对已有的运算符赋予他们新的含义。重载的修饰符是operator

比如我们的+号,它的含义是两个数值相加:1+1=2+号对应的函数名是plus

比如我们定义一个类,如何才能使用 + 这个符号呢?其实也很简单,使用 operator 重载 plus 函数就能搞定,我们试试吧

重载 plus

首先我们定义一个类 Point ,然后重载 plus 函数

class Point(val x: Int,val y: Int) {
   
   

    operator fun plus(other: Point): Point {
   
   
        return Point(x + other.x, y + other.y)
    }
}

请注意,一定要用 operator 关键字修饰,否则我们是不能用 + 号的。

测试代码:


    fun mian() {
   
   
        val point = Point(1, 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值