Kotlin——初级篇(五):操作符与操作符重载一

本文详细介绍了Kotlin中的操作符重载,包括一元操作符(如+,-,!)和二元操作符(如+,-,*,/,%)。通过实例展示了操作符的使用和重载方法,特别强调了复合运算符的实现和赋值表达式的区别。文章还提到了位运算和区间操作符,并指出在自定义操作符时的一些注意事项。
摘要由CSDN通过智能技术生成

在这里插入图片描述
本篇文章为大家详细的介绍Koltin特有的操作符重载。或许对于有编程经验的朋友来说,操作符这个词绝对不陌生,就算没有任何编辑基础的朋友,数学中的算数运算符也绝不陌生。例如(+、-、*、/、>、<、>=、<=)等。而算数运算符是编程语言中的一种操作符而已。就算你没有任何基础,也请你详细的看完这篇文章,我相信你会很有收获的。
目录
在这里插入图片描述
一、约定
所谓预定:即指Kotlin允许我们为自己的类型提供预定义的一组操作符的实现。这些操作符具有固定的符号表示(如 + 或 *)和固定的优先级。为实现这样的操作符,我们为相应的操作类型提供了一个固定名字的函数。这样的技术,称为约定

因为由类实现的接口集是固定的,而Kotlin不能为了实现其他接口而修改现有的类,因此一般通过扩展函数的机制来实现为现有的类增添新的约定方法,从而适应任何现有的Java类。

二、操作符与操作符重载
根据操作数据个数的不同,分为两种操作类型:

一元操作:即指操作数只有一个的情况
二元操作:即指操作数存在二两或多个的情况。特别说明:在存在多个操作数的情况下,会用复合运算或拆分为多个运算。
2.1、一元操作
一元操作:即指一个操作数的情况,
2.1.1、简单的一元操作运算
这里分为三种情况有三种一元操作:

  • 表示为操作数实现一个正号的意思,其操作数为数值型
  • 表示为操作数实现一个负号的意思,其操作数为数值型
    ! 表示取反的意思,其操作数为boolean类型

提供一个表格直观的展示:

操作符 重载
+a a.unaryPlus()
-a a.unaryMinus()
!a a.not()
例:

var a = 1
var b = -2
var c = true
var d = false

// 操作符实现
println("+a = ${+a}\t -a = ${-a}\t !c = ${!c}")
println("+b = ${+b}\t -b = ${-b}\t !d = ${!d}")

// 操作符重载实现
println("+a = ${a.unaryPlus()}\t -a = ${a.unaryMinus()}\t !c = ${c.not()}")
println("+b = ${b.unaryPlus()}\t -b = ${b.unaryMinus()}\t !d = ${d.not()}")

输出结果为:

+a = 1	 -a = -1	 !c = false
+b = -2	 -b = 2	 !d = true
+a = 1	 -a = -1	 !c = false
+b = -2	 -b = 2	 !d = true

2.1.2、复杂的一元操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值