我的Kotlin For Android之路基础篇(二)

来源:互联网 发布:python获取当前函数名 编辑:程序博客网 时间:2024/06/10 03:11

我的Kotlin For Android之路基础篇(二)

一、变量

Kotlin是这样定义的

var n : Int = 30;var n : Int;var n = 100;

总结几点:
1.数据类型要放到变量之后,使用:分隔
2.定义变量需要使用使用var修饰,如果出现m = 10这种情况,编译器就会报错。定义常量需要使用val修饰。
3.由Int可以看出,数据类型是需要大写的。
4.编译器可以根据变量之后的赋值推断出变量的数据类型。

二:数据类型

1.数值类型

主要的数值类型如下
Double
Float
Long
Int
Short
Byte
在Kotlin中无法进行数值之间的隐式转换,但是提供了相应的转换方法,形式为: to数据类型名():

fun main(args:Array<String>){var a : Int = 10var b : Short = 20a = b.toInt()print(a)

}
最后的打印的值应为20

2.布尔类型
使用Boolean描述,具体操作和Java中相似

3.字符类型
使用Char描述,同样支持转义符,使用 \ 描述,在Java中一个字符可以看做是对应的ASCII码的值,但是Kotlin必须使用toInt()进行转换才能转换为对应的ASCII码的值。

4.字符串
1.普通的字符串:参考Java
var str = “hello Kotlin”
2.raw string:也就是会保留原始格式的字符串

    var str1 = """    1234    324  说什么    2312321    啊哈哈    """print(str1)

打印结果
这里写图片描述
这一点还是有点意思的

5.数组
与Java中不同的是Kotlin中有很多种初始化数组的方式
1.arrayOf():可以定义存储任何类型的值的数组
var str1 = arrayOf(‘1’,1,’c’,a)
2.使用arrayOfNulls定义指定长度的空数组
var str3 = arrayOfNulls(10)
3.使用Array初始化10个元素都为1的数组
var str4 = Array(10,{1})

三:函数

Kotlin中一般的函数形式如下

fun 函数名(变量名:数据类型) : 返回值的类型
{

}
当没有返回值的时候,返回值的类型可以为Unit或者不填
例如

fun test(a:Int,b:Int):Int{    //此处不可以有分号    return a + b}fun myPrint():Unit{    println("hello kotlin!")}

四:if,when,for,while语句

1.if语句

var a = 10var b = 20var min = if (a > b){    a}else{    b}println(min)

其中if和else之后都被看成一个代码块,将最后一行的表达式作为返回值,上述中因为b > a ,所以返回值为b,打印为20

2.when语句

① when作为表达式使用和if类似,第一个满足条件的最后一行表达式作为返回值

var aWhen = 2;var result = when(aWhen){    1 -> {        20    }    else -> {        30    }}println(result)

最后的打印的值为30,其实可以看出,when的作用就和Java中switch一样

②when作为语句使用

var bWhen = 2when(bWhen){    1 -> {        println("这里是1")    }    2 -> {        println("这里是2")    }    else -> {        println("都不是")    }}

值得注意的是这里的else语句是不可以缺少的,当其中的1和2要执行相同的语句的时候,使用逗号隔开 1,2即可,甚至分支的条件也可以是函数

3.for循环

var str = intArrayOf(2,3,4,5,6,7,8,9,10)for((index,value) in str.withIndex()){    println("str[$index] = " + value)}

其中index为索引,value为值

4.while循环和do……while循环

使用方式参考Java

原创粉丝点击