我的Kotlin学习之旅(二)
来源:互联网 发布:arcgis mac版 编辑:程序博客网 时间:2024/06/11 04:20
在Kotlin语言中文站学习了一段时间,这是第二次看文档,第一次简单的看了一遍,等真正要用的时候又发现不真正实践的话,学习的效果并没有很好,所以在第二遍看文档的时候,自己手写做了一遍笔记,然后接着写这个学习之旅的博客
首先是Kotlin的基本语法:
1.定义函数:
fun sum(x: Int, y: Int): Int { return x + y }
这个函数有两个Int类型的参数,返回的结果是Int类型
简化版(自推导型返回值):
fun sum(x: Int, y: Int) = x + y
当函数的返回类型是void的时候,用的是Unit
fun printSum(x: Int, y: Int): Unit { println(x + y) }
同时Unit可以省略
fun printSum(x: Int, y: Int) { println(x + y)}
2.定义局部变量
在kotlin中变量分为两种:val 和 var
val是常量的意思,它不可以被重新赋值,只能被赋值一次!
var代表的是变量的意思
val a: Int = 1
当对a进行重新赋值的时候,代码会飘红
var b: Int = 2;b = 3;
var可以被重新赋值
3.使用条件表达式
if表达式的写法有但不限于以下几种:
fun max(x: Int, y: Int): Int { if (x > y) { return x } else { return y } }
或者
fun max(x: Int, y: Int): Int { return if(x > y) x else y }
或者
fun max(x: Int, y: Int) = if(x > y) x else y
4.使用for循环
val list = listOf("a","b","c") for (item in list){ //自己的逻辑 }
又或者可以这样写:
for (index in list.indices){ //自己的逻辑}
5.使用when表达式
when表达式是java中没有的,它的作用和switch类似
fun describe(obj: Any): String = when(obj){ 1 -> "这是数字" "hello" -> "这是字符串" else -> "不知道" }
kotlin中,Any是所有类的父类,但是不等同于java中的Object,这一点要注意
when表达式必须要有else,因为它是个表达式,所以可以像上面那样写
6.使用区间(range)
if(x in 1..10){ //自己的逻辑}
意思是 x 是否在 [1,10]这个区间内
if(x !in 1..10)
代表的是相反的意思,x不在这个区间内
for (x in 1 until 10){ //自己的逻辑}
这里需要注意的是,这个区间表示的是[1,10),注意是不包括尾巴的
for (x in 10 downTo 0){ //自己的逻辑 }
for循环从10开始,到0 ,区间是[10,0]
基本语法就到这里了
阅读全文
1 0
- 我的Kotlin学习之旅(二)
- 我的Kotlin学习之旅 ( 三 )
- 我的Kotlin学习之旅(一)
- 我的Kotlin学习之旅(四)
- 我的Kotlin学习之旅(五)
- 我的Kotlin学习之旅(六)
- 我的Kotlin For Android之路开篇(二)
- Kotlin开发之旅《二》—Kotlin的基本语法
- kotlin学习(二)
- Kotlin学习(二)
- Kotlin的Spring之旅(二):IOC控制反转
- 我的Kotlin For Android之路基础篇(二)
- Kotlin学习(二)Hello Kotlin
- 我的Unity3D学习之旅二
- 我的Docker学习之旅<二>
- kotlin学习之旅
- kotlin学习笔记(二)
- kotlin学习笔记(二)
- MYSQL的常用命令和增删改查语句和数据类型
- leetcode_add two number
- python基础-线程创建、线程池、进\线程异步回调(add_done_callback)、进\线程数据共享、ftp线程池
- 万能vip视频解析接口
- js实现全选、反选
- 我的Kotlin学习之旅(二)
- SBT的构建配置
- java并发面试题(一)-基础
- 解决Microsoft Teredo Tunneling Adapter >>>這個裝置無法啟動。 (代碼 10)
- 搭建大型源码阅读环境——使用 OpenGrok 搭建大型源码阅读环境——使用 OpenGrok
- 数据库SQL语句练习题
- 设计模式--观察者模式初探和java Observable模式
- 不值一提的计算机基础教程-1-文件
- Android笔记(二):网络图片加载器