1、基本数据类型

Kotlin的基本数值类型包括byte,short,int,long,float,double等。字符不属于数值类型,是一个独立的数据类型。

数字类型中不会主动转换。例如,不能给Double变量分配Int。必须做一个明确的类型转换,可以使用众多的函数之一。

2、类型转换

每种数据类型都有下面这些转换:

toByte():Byte,

toShort():Short,

toInt():Int,

toLong():Long,

toFloat():Float,

toDouble():Double,

toChar():Char

有时候,也会有自动类型转换,前提是根据上下文环境推断出正确的数据类型而且数学操作符会做出相应的重载。例如:

val l = 1L+3 //Long+Int= Long

3、位操作符

对于Int和Long类型,还有一系列的位操作符可用,分别是:

shl(bits) - 左移动

shr(bits) - 右移动

ushr(bits) - 无符号右移动

and(bits) - 与

or(bits) - 或

xor(bits) - 异域

inv() - 反向

4、条件控制

when表达式:when将它的参数和所有分支条件进行比较,直到某个分支满足条件。

when既可以当作表达式使用,也可以当作语句使用。当被当作表达式的时候,符合条件的分支就是整个表达式的值,如果被当作语句使用,则忽略个别分支的值。类似于C#里的switch。

val x =
when(x){
-> print("x === 1") //输出 x === 1
-> print("x === 2")
else ->{
print("x 不是1,也不是2")
} }

这里的else相当于switch中的default。如果很多分支需要相同的处理条件的话,可以把多个条件放在一起,用逗号分隔。

5、循环控制

for循环:for循环可以对任何提供迭代器的对象进行遍历。

语法:for(item in collection) print(item)

val items = listOf("apple", "banana", "kiwi")
for (item in items) {
println(item)
} for (index in items.indices) {
println("item at $index is ${items[index]}")
}

还有while与do...while循环,语法上与其他编程语言基本一样

println("----while 使用-----")
var x =
while (x > ) {
println( x--) //输出5,4,3,2,1
}
println("----do...while 使用-----")
var y =
do {
println(y--) //输出5,4,3,2,1
} while(y>)

Kotlin基础学习笔记(2)的更多相关文章

  1. 【C#编程基础学习笔记】4---Convert类型转换

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...

  2. 【C#编程基础学习笔记】6---变量的命名

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...

  3. 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)

    技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...

  4. Java基础学习笔记总结

    Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...

  5. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

  6. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  7. Java基础学习笔记(一)

    Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...

  8. C#RabbitMQ基础学习笔记

    RabbitMQ基础学习笔记(C#代码示例) 一.定义: MQ是MessageQueue,消息队列的简称(是流行的开源消息队列系统,利用erlang语言开发).MQ是一种应用程序对应用程序的通信方法. ...

  9. handlebars.js基础学习笔记

    最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...

随机推荐

  1. 沉淀再出发:web服务器和应用服务器之间的区别和联系

    沉淀再出发:web服务器和应用服务器之间的区别和联系 一.前言 关于后端,我们一般有三种服务器(当然还有文件服务器等),Web服务器,应用程序服务器和数据库服务器,其中前面两个的概念已经非常模糊了,但 ...

  2. layer 遮罩层等待

    效果 代码: js函数之前:var msg = layer.msg('努力中加载中...', {icon: 16,shade: [0.5, '#f5f5f5'],scrollbar: false,of ...

  3. iOS模拟器命令xcrun simctl系列(自动化测试)

    1. 列出安装的可用的模拟器: xcrun instruments -s [如:iPhone 5s (9.0) [00AB3BB6-C5DC-45C7-804F-6B88F57C2AFF] (Simu ...

  4. python29 excel写模块xlwt

    xlwt模块用于新建excel文件并写入数据. 安装 pip install xlwt 简单使用 import xlwt from datetime import datetime #样式 style ...

  5. Python安装Windows的pip包

    1.到https://www.python.org/downloads/ 下载python包安装python 2.到https://pypi.python.org/pypi/pip#downloads ...

  6. JavaScript的DOM_操作行内样式

    一.检测浏览器是否支持css CSS 作为(X)HTML 的辅助,可以增强页面的显示效果.但不是每个浏览器都能支持最新的 CSS 能力.CSS 的能力和 DOM 级别密切相关,所以我们有必要检测当前浏 ...

  7. jQuery UI 实例 – 切换(Toggle)

    toggle()函数用于为每个匹配元素的click事件绑定轮流的处理函数. toggle()是一个特殊的事件函数,用于为匹配元素的click事件绑定多个事件处理函数.每次触发click事件时,togg ...

  8. 【[AHOI2009]同类分布】

    这是一篇有些赖皮的题解 (如果不赖皮的话,bzoj上也是能卡过去的) 首先由于我这个非常\(sb\)的方法复杂度高达\(O(171^4)\),所以面对极限的\(1e18\)的数据实在是卡死了 但是这个 ...

  9. Kali-linux破解操作系统用户密码

    当忘记操作系统的密码或者攻击某台主机时,需要知道该系统中某个用户的用户名和密码.本节将分别介绍破解Windows和Linux用户密码. 8.6.1 破解Windows用户密码 Windows系统的用户 ...

  10. Ext之grid內編輯

    Ext.grid.Panel xtype:gridpanel,grid 如果要完成在grid中編輯的功能.首先要填加 selType: 'cellmodel',    plugins: [       ...