从零开始学Kotlin-操作符(3)
从零开始学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)的更多相关文章
- 从零开始学Kotlin第六课
Kotlin调用java代码: 1.如果是内部工程的类,直接调用,如果是外部的工程项目按照java的方式将jar包导入进来. 2.实例化java对象 我们之前学java的时候实例化对象是这个样子的. ...
- 从零开始学Kotlin第七课
1.强制类型转换需要在后面加两个感叹号 2.如果需要在java代码调用kotlin的方法时候使用文件名+kt.方法 3.object 类名 是创建匿名内部类的写法 调用 传入class对象 4.在to ...
- 从零开始学Kotlin第四课
面向对象: //妹子 性格 声音 class Girl(var chactor:String,var voice:String) fun main(args: Array<String>) ...
- 从零开始学Kotlin第三课
kotlin函数和函数式表达式的简化写法: fun main(args:Array<String>) { var result=add(2,5) println(result) ///简化 ...
- 从零开始学Kotlin第一课
Kotlin的方法: 一个简单的计算器: fun main(args:Array<String>){ //主函数main方法 var a=8; var b=9; println(plus( ...
- 从零开始学Kotlin第五课
函数式编程入门: package EL fun main(args: Array<String>) { var names= listOf<String>("tom& ...
- 从零开始学Kotlin第二课
字符串模板 fun main(args:Array<String>){ //主函数main方法 println(diaryGenerater("天安门")); } // ...
- 从零开始学Kotlin-扩展函数(10)
从零开始学Kotlin基础篇系列文章 什么是扩展函数 扩展函数数是指在一个类上增加一种新的行为,我们甚至没有这个类代码的访问权限: Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 ...
- 从零开始学Kotlin-枚举(9)
从零开始学Kotlin基础篇系列文章 枚举的定义 一个类的对象是有限且固定的,这种实例有限且固定的类称为枚举类; 枚举常量用逗号分隔,每个枚举常量都是一个对象; enum class EnumDemo ...
随机推荐
- 死磕nginx系列--使用upsync模块实现负载均衡
问题描述 nginx reload是有一定损耗的,如果你使用的是长连接的话,那么当reload nginx时长连接所有的worker进程会进行优雅退出,并当该worker进程上的所有连接都释放时,进程 ...
- Could not find class com.google.gson.Gson
在Android开发中使用gson解析json字符串,出现异常:java.lang.classnotfoundexception:com.google.gson.Gson.解决方案如下: 这个异常的怪 ...
- 晚上打开eclipse时碰到这个问题 :Workspace in use or cannot be created, choose a different one.
晚上打开eclipse时碰到这个问题 :Workspace in use or cannot be created, choose a different one. 网上看到这方面的解决方式: 原因: ...
- Kafka--基础知识
- mysql用户创建与授权
一. 创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username:你将创建的用户名 host:指定该用户 ...
- Hibernate-validator校验框架使用
可以有两种使用方法: 第一种:在要检验的Dto对象之前加@Valid注解,这种方法必须配合BindingResult参数一起使用,否则验证不通过就会返回400,并且抛出"org.spring ...
- centos7上svn安装
svn安装 yum install subversion 查看svn安装的版本 svnserve --version新建svn目录 mkdir /opt/svn 建立版本库目录 mkdir ...
- ceph维护
一个节点挂了,重新添加硬盘并格式化成xfs文件系统挂载到原来的位置后ceph osd无法启动.使用ceph osd tree查看处于down状态.A:移除掉这个osd,1:ceph osd out o ...
- 1.2《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——开始第一条命令
现在开始准备运行我们的第一条命令了,在屏幕上打印'hello'.(字符打印的地方被称为'标准输出',通常指的是屏幕,很少指真的物理打印机设备).这条命令就是echo,这条命令的参数是想要输出的字符串或 ...
- 前后台分离式开发(swagger)
一.前后台分离开发(swagger) 1.安装maven 配置的maven环境变量 M2_HOME/MAVEN_HOME Path %M2_HOME%/bin 打开运行窗口:输入mvn -v,查看是否 ...