从零开始学Kotlin基础篇系列文章

冒号操作符 ":" 和 "::"

  • :操作符用来定义变量、类的继承等
var name: String//定义变量
class MainActivity : AppCompatActivity()//继承类
  • ::可以用来得到类的Class对象
startActivity(Intent(this@MainActivity, SecondActivity::class.java))//得到SecondActivity对象

比较符""和"="

  • "=="比较两个数值大小
  • "==="比较两个对象地址
var a:Int = 100
print(a===a) 结果:true
var b:Int =a
var c:Int =a
print(b===c) 结果:false
print(b==c) 结果:true

属于操作符 "is"

  • is操作符可以用来判断某个实例是否属于另一个实例
if (name is String){ //name 是否是String 类型
print(true)
}

模板操作符 "$"

  • 模板操作符可以输出一个变量值
var name="SiberiaDante"
print("My name is $name")//输出结果:My name is SiberiaDante

Null检查机制符"?"、"?:"和"!!"

  • "?"表示这个对象可以为空
//类型后面加?表示可为空
var age: String? = "23"
  • "?:"表示非空则使用,否则返回指定数值
//a不为空,返回a的长度,否则返回-1
val 1ength==a?.length?:-1
//相当于
val length:Int=if(a!=null)a.length else -1
  • "!!" 操作符
val l = b!!.length//非空b,如果b为空,抛出空指针

区间操作符".."、"until"、"in"、"!in"和"downTo()"、"step()"函数

  • ..闭区间操作符,代表在a到b区间类,包含a和a;until半闭区间操作符,代表a到b区间,包含a不包含b;
  • in操作符,代表i 在某一个区间类;!in 代表i不在某一个区间类
if(i in 1..10){ //如果i在1到10十个数之间,就输出i
print (i)
}
if(i !in 1..10){ //如果i不在1到10十个数之间,就输出i
print (i)
}
if(i in 1 until 10){ //如果i在1到10九个数之间(不包含10),就输出i
print (i)
}
  • downTo()函数:倒叙区间内循环,a 到 b区间到倒叙
for(i in 5 downTo 1){
print(i)//输出结果:54321
}
  • step()函数,跳跃式函数
for(i in 5..1 step 2){
print(i)//输出结果:531
}

从零开始学Kotlin-操作符(3)的更多相关文章

  1. 从零开始学Kotlin第六课

    Kotlin调用java代码: 1.如果是内部工程的类,直接调用,如果是外部的工程项目按照java的方式将jar包导入进来. 2.实例化java对象 我们之前学java的时候实例化对象是这个样子的. ...

  2. 从零开始学Kotlin第七课

    1.强制类型转换需要在后面加两个感叹号 2.如果需要在java代码调用kotlin的方法时候使用文件名+kt.方法 3.object 类名 是创建匿名内部类的写法 调用 传入class对象 4.在to ...

  3. 从零开始学Kotlin第四课

    面向对象: //妹子 性格 声音 class Girl(var chactor:String,var voice:String) fun main(args: Array<String>) ...

  4. 从零开始学Kotlin第三课

    kotlin函数和函数式表达式的简化写法: fun main(args:Array<String>) { var result=add(2,5) println(result) ///简化 ...

  5. 从零开始学Kotlin第一课

    Kotlin的方法: 一个简单的计算器: fun main(args:Array<String>){ //主函数main方法 var a=8; var b=9; println(plus( ...

  6. 从零开始学Kotlin第五课

    函数式编程入门: package EL fun main(args: Array<String>) { var names= listOf<String>("tom& ...

  7. 从零开始学Kotlin第二课

    字符串模板 fun main(args:Array<String>){ //主函数main方法 println(diaryGenerater("天安门")); } // ...

  8. 从零开始学Kotlin-扩展函数(10)

    从零开始学Kotlin基础篇系列文章 什么是扩展函数 扩展函数数是指在一个类上增加一种新的行为,我们甚至没有这个类代码的访问权限: Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 ...

  9. 从零开始学Kotlin-枚举(9)

    从零开始学Kotlin基础篇系列文章 枚举的定义 一个类的对象是有限且固定的,这种实例有限且固定的类称为枚举类; 枚举常量用逗号分隔,每个枚举常量都是一个对象; enum class EnumDemo ...

随机推荐

  1. PHP判断用户是否手机访问

    自定义的函数如下: $agent = check_wap(); if( $agent ) { header('Location: http://www.nowamagic.net'); exit; } ...

  2. 【转】Android 4.4中播放HTML5视频<video>的Bug

    近期Nexus 4手机自动升级到Android4.4,本来挺好的一件事儿,结果发现自己的应用中出现一个Bug,应用中使用了Webview播放HTML5视频,代码如下: <video width= ...

  3. Spark项目之电商用户行为分析大数据平台之(二)CentOS7集群搭建

    一.CentOS7集群搭建 1.1 准备3台centos7的虚拟机 IP及主机名规划如下: 192.168.123.110 spark1192.168.123.111 spark2192.168.12 ...

  4. WorldWind源码剖析系列:下载请求类DownloadRequest

    下载请求类DownloadRequest是各种下载请求的抽象基类,先派生出网络下载请求类WebDownloadRequest,再派生出地理空间下载请求类GeoSpatialDownloadReques ...

  5. python面试一:python2与python3的区别一

    1.默认编码方式不同:py3用的是utf-8,变量名更为广泛.2.去除<>改用!=3加入as 和with关键字4./除法默认数据类型不同 py2 5/3=1 py3 5//3=15.去掉了 ...

  6. DB2创建function(二)

    DB2创建function(一),介绍将function内容作为字段值,或做为一个where条件的情况. DB2创建function(二),介绍返回的内容为一个集合的情况.调用结果集的示例如下: se ...

  7. CAN总线学习总结——错误帧和错误状态

    CAN总线学习总结——错误帧和错误状态 标签: 数据 / 错误帧 / 错误状态 / CAN总线 / 总线协议 253 一.五种CAN总线可能发生的错误 1.CRC错误: 接收节点计算出的CRC校验值, ...

  8. R 语言的Dataframe常用操作

    上节我们简单介绍了Dataframe的定义,这节我们具体来看一下Dataframe的操作 首先,数据框的创建函数为 data.frame( ),参考R语言的帮助文档,我们来了解一下data.frame ...

  9. POJ 3041&&3020

    两道二分图的练手题. 3041:题意大概是在一个N*N的图上有K个东西,你每次可以清除一行或一列上的所有东西.让你求最少的操作次数. 我们根据题意建图.对于每一个点的坐标(x,y)之间连一条边.比如样 ...

  10. [Deep-Learning-with-Python]基于Keras的房价预测

    预测房价:回归问题 回归问题预测结果为连续值,而不是离散的类别. 波士顿房价数据集 通过20世纪70年代波士顿郊区房价数据集,预测平均房价:数据集的特征包括犯罪率.税率等信息.数据集只有506条记录, ...