当前位置: 首页 > news >正文

网站建设系统公司地址wordpress函数发件

网站建设系统公司地址,wordpress函数发件,wordpress折腾,wordpress 删除菜单目录 扩展函数 语法结构 代码示例 运算符重载 语法结构 一元操作符 二元操作符 数值类型操作符 等于和不等于操作符 比较操作符 调用操作符 扩展函数 语法结构 对于扩张函数的语法结构其实很简单#xff0c;你想在那个类中添加扩张函数#xff0c;那么你就用该类…目录 扩展函数 语法结构 代码示例 运算符重载 语法结构 一元操作符 二元操作符 数值类型操作符 等于和不等于操作符 比较操作符 调用操作符 扩展函数 语法结构 对于扩张函数的语法结构其实很简单你想在那个类中添加扩张函数那么你就用该类的类名加上点就可以一般语法结构如下 fun ClassName.methodName(): Int {return 0 } 代码示例 fun String.lettersCount(): Int {var count 0for (letterChar in this) {if (letterChar.isLetter()) count}return count }我们只需要创建一个为String.kt的文件对于文件名我们可以随便命名但是最好还是创建哪个类的扩展函数就以哪个类为文件名这样便于查找也方便后续的合作开发。 我们将lettersCount()方法定义成了String类的扩展函数那么函数中就自动拥有了String实例的上下文。因此lettersCount()函数就不再需要接收一个字符串参数了而是直接遍历this即可因为现在this就代表着字符串本身。 定义好了扩展函数之后统计某个字符串中的字母数量只需要这样写即可 val count dshdhakjdas2u121jksd23424h.lettersCount()println(含有$count 个字母) 除了String类之外你还可以向任何类中添加扩展函数Kotlin对此基本没有限制。 运算符重载 语法结构 class Obj{operator fun plus(obj: Obj) : Obj{//处理逻辑} } 运算符重载使用的是operator关键字只要在指定函数的前面加上operator关键字就可以实现运算符重载的功能了。 在上述语法结构中关键字operator和函数名plus都是固定不变的而接收的参数和函数返回值可以根据你的逻辑自行设定。那么上述代码就表示一个Obj对象可以与另一个Obj对象相加最终返回一个新的Obj对象。对应的调用方式如下 val obj1 Obj() val obj2 Obj() val obj3 obj1 obj2 这种obj1 obj2的语法看上去好像很神奇但其实这就是Kotlin给我们提供的一种语法糖它会在编译的时候被转换成obj1.plus(obj2)的调用方式。 了解了运算符重载的基本语法之后下面我们开始实现一个更加有意义功能让两个Money对象相加。 首先定义Money类的结构这里我准备让Money的主构造函数接收一个value参数用于表示钱的金额。创建Money.kt文件然后定义plus运算符重载代码如下所示 class Money(val value: Int) {operator fun plus(money: Money): Money {val sum money.value valuereturn Money(sum)} } 可以看到这里使用了operator关键字来修饰plus()函数这是必不可少的。在plus()函数中我们将当前Money对象的value和参数传入的Money对象的value相加然后将得到的和传给一个新的Money对象并将该对象返回。这样两个Money对象就可以相加了就是这么简单。除了plus()函数Kotlin还提供了很多如下 一元操作符 操作符方法名aa.unaryPlus()-aa.unaryMinus()!aa.not()aa.inc() 二元操作符 操作符方法名a ba.plus(b)a – ba.minus(b)a * ba.times(b)a / ba.div(b)a % ba.mod(b)a..ba.rangeTo(b)a in bb.contains(a)a !in b!b.contains(a)a ba.plusAssign(b)a - ba.minusAssign(b)a * ba.timesAssign(b)a / ba.divAssign(b)a % ba.modAssign(b) 数值类型操作符 操作符方法名a[i]a.get(i)a[i, j]a.get(i, j)a[i_1, …, i_n]a.get(i_1, …, i_n)a[i] ba.set(i, b)a[i, j] ba.set(i, j, b)a[i_1, …, i_n] ba.set(i_1, …, i_n, b) 等于和不等于操作符 操作符方法名a ba?.equals(b) ?: (b null)a ! b!(a?.equals(b) ?: (b null)) 比较操作符 操作符方法名a ba.compareTo(b) 0a ba.compareTo(b) 0a ba.compareTo(b) 0a ba.compareTo(b) 0 调用操作符 操作符方法名a()a.invoke()a(i)a.invoke(i)a(i, j)a.invoke(i, j)a(i_1, …, i_n)a.invoke(i_1, …, i_n)
http://wiki.neutronadmin.com/news/441429/

相关文章:

  • 外卖网站建设的策划书广告网站设计公司 作用
  • 深圳网站建设公司平台拥有域名后怎么搭建网站
  • 中国做铁塔的公司网站wordpress 字段插件
  • 做外贸大大小小的网站有哪些东莞骄阳网站建设
  • 开封网站建设费用吴中区两学一做网站
  • 小木桥路建设工程招投标网站物流网站设计
  • 怎么做公司的中英文网站丽江建设局网站
  • 中石油第一建设公司官网百度爱采购优化排名软件
  • asp.net网站访问统计贵阳网站建设宏思锐达
  • 手机版网站开发工具拍摄企业宣传片
  • 网站推广方案注意事项?企业oa系统手机版下载
  • 做公司网站的好处搭建网站服务器
  • 网站开发 属于研发费用吗抖音代运营合同范本
  • 财税公司网站开发移动登录网页模板免费下载
  • jquery 个人网站南京seo推广优化
  • 合肥环保公司网站建设网站的网站建设
  • 设置网站默认首页中国最大的家装网站
  • 网站要怎么做才能获得市场份额每一个网站都是响应式吗
  • 天津网站建设制作系统店铺门头设计app
  • 上哪儿找做网站的客户钦州公司做网站
  • 做网站排名大概要多少钱云龙网站开发
  • dedecms怎么做网站办公装修怎么设计
  • 网站模块报价网页设计与制作模板图
  • 做软件项目需不需要有网站saas小程序开发费用
  • 网站建设移交确认书wordpress用户组阅读文章
  • 阿里巴巴网站导航栏怎么做与知名网站互连
  • 如何快速的建设网站外贸营销员职业技能证书
  • 苏州市建设局投诉网站电商网站有哪些平台
  • 网页免费制作网站简单创新设计小产品
  • 卢沟桥网站建设广东备案网站