美文网首页Kotlin之旅
Kotlin的算术运算符

Kotlin的算术运算符

作者: 墙角的牵牛花 | 来源:发表于2018-04-04 16:02 被阅读8次

先来一个demo

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

fun main(args: Array<String>) {
val p1=Point(1,6)
val p2=Point(7,334)
println(p1+p2)
}

结果:Point(x=8, y=340)

重载运算符:

a*b   函数名:times
a/b   函数名:div
a%b 函数名:mod
a+b  函数名:plus
a-b  函数名:minus

特殊运算符

shl——带符号左移
shr——带符号右移
ushr——无符号右移
and——按位与
or——按位或
xor——按位异或
inv——按位取反

一元运算符

+a unaryPlus
+b unaryMinus
!a not
++a,a++ inc
--a,a--    dec

forEach一种写法:

(0..n).forEach{ println(it)}
直接:
val n=9
println(0..(n+1))
结果不会遍历,而是:0..10

解构函数:

 val (x,y)=p1;
 println(x)

data class Test1(val name:String,val extension:String)

fun splitFileName(fullName:String):Test1{
val result=fullName.split('.',limit = 2)
return Test1(result[0],result[1])
}

fun main(args: Array<String>) {
val (name,external )= splitFileName("ddfeweweww.ttyuiii")
println(name)
}

接口监听:

class Person  (val name :String,age : Int ,salary :Int): PropertyChangeAware() {

var age:Int =age
    set(newValue){
        val oldValue=field
        field=newValue
        changeSupport.firePropertyChange("age",oldValue,newValue)
    }

var salary:Int =salary
    set(newValue){
        val oldValue=field
        field=newValue
        changeSupport.firePropertyChange("salary",oldValue,newValue)
    }

}

open class PropertyChangeAware{
  protected val changeSupport=PropertyChangeSupport(this)

fun addPropertyyChangeListener(listener:PropertyChangeListener){
    changeSupport.addPropertyChangeListener(listener)
}

fun removePropertyChangeListenerListener(listener: PropertyChangeListener){
    changeSupport.removePropertyChangeListener(listener)
}
}

 val p=Person("dsdsf",23,500)
p.addPropertyyChangeListener(
        PropertyChangeListener {
            evt ->  println("Property ${evt.propertyName} changed from ${evt.oldValue} to ${evt.newValue}"  )
        }
)

p.age=35

相关文章

  • Kotlin二:运算符和表达式 归纳总结

    Kotlin支持Java的算术运算符、赋值运算符、扩展后的赋值运算符、比较运算符、逻辑运算符。Kotlin不支持J...

  • Kotlin实战学习笔记(七 约定)

    重载算术运算符 重载算术运算符 Kotlin没有提供位运算符,用下面方式代替 重载复合赋值运算符通常定义了plus...

  • Kotlin运算符重载及其他约定

    一、重载算术运算符 1.1 重载二元算术运算 kotlin 允许我们重载常用的二元算术运算:+ - * / ,这样...

  • 7.基本操作符(BasicOperators)

    基本操作符 kotlin_基本操作符 赋值运算符: 算术自反赋值运算符 算数运算符 自增自减运算符(++、–) 字...

  • 运算符和表达式

    Kotlin 语言提供了一系列功能丰富的运算符,这些运算符包括所有的算术运算符,还包括比较运算符、逻辑运算符、区间...

  • Kotlin的算术运算符

    先来一个demo 重载运算符: 特殊运算符 一元运算符 forEach一种写法: 解构函数: 接口监听: }

  • 【Python一级】运算符

    在python一级考试中,主要运用到算术运算符、比较运算符、逻辑运算符 算术运算符 算术运算符算术运算符与数值一起...

  • Python中的运算符

    常用的运算符: 算术运算符 赋值运算符 比较运算符 布尔运算符 位运算符 1.算术运算符 基本运算: 标准算术运算...

  • Java中的运算符

    一:算术运算符 算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。Java 中常用的算术运算符: ...

  • kotlin中的二元运算符重载

    可重载的二元算术运算符 在kotlin中,重载运算符需要使用operator修饰符,如 在java中调用时,像使用...

网友评论

    本文标题:Kotlin的算术运算符

    本文链接:https://www.haomeiwen.com/subject/plqkhftx.html