官方参考文档

这是首次使用,当做记录学习,这博客都是基本使用情况

首先搭好环境,本人使用idea2017.1版本 这有安装破解法

搭好环境以后

创建新的测试项目

创建新的工程

选择kotlin

选择kotlin;

至此,一个工程创建完毕

开始测试

跟java一样现创建包名
这里写图片描述

创建kotlin文件

千里之行始于Hello World

fun main(args:Array<String>){
    println("Hello World")

}

运行之后我们就能看到hello world 出现在控制台了

fun printSum(a: Int , b: Int){
    println("sum of $a and $b is ${a+b}")
}

测试基本语法的运算

注:kotlin在字符串里可以用 <script type="math/tex" id="MathJax-Element-1">常量或者</script>{表达式} 来获取一个值 不用像java 一样做字符串拼接

fun maxOf(a: Int , b: Int): Int{
    if (a >b) {
        return a
    }else{
        return b
    }
}
fun maxOf2(a: Int,b: Int) = if (a > b) a else b

这是基本的if语句

kotlin允许if作为一个表达式 直接返回结果 跟java里的 ? : 三目运算有点相似

fun getStringLength(obj:Any): Int?{
    if (obj is String )
        return obj.length
    return null
}

在kotlin 中 is 跟java的instanceof一个意思,可以判断是否是这个类型

值得注意的是如果是这个类型的话kotlin会自动转为该类型 不用再特意强转一次;

/**
 * 测试for循环
 * 相当于java for(Object obj : List<Object>)
 */
fun testFor(){
    val listOf = listOf<String>("hello", "world", "today")
    for (item in listOf){
        print(item)
    }
    println()
}
/**
 * 测试for循环
 * 相当于java fori
 */
fun testFor1(){
    val listOf = listOf<String>("hello", "world", "today")
    for (item in listOf.indices){//其实就是区间迭代循环
        print(listOf[item] +"  ")
    }
    println()
}

/**
 * 测试区间for循环 和数列迭代
 */
fun testFor2(){

    for (x in 1..6)
        print("$x ") //打印1到6 六个数字

    for (x in 9 downTo 0 step 3)//打印9 6 3 0 四个数 step 相当于java中 for(;;++)里的++的功效 不过这边是+=3
        print("$x ")
    for (x in 0 until 9 step 3)//打印0 3 6 三个数字
        print("$x ")

}

值得注意的是9 downTo 0包含了0 而until 9 却没包含9

kotlin中还有个区间(Range)的概念

使用 x..y代表的是x到y之间的范围


fun testRange(){
    val x  = 10
    val y = 9
    if (x in 1..x+2) {//这是[1,11]
        println("is fit in range")
    }

}

最后说下

in 的使用

在for (item in listOf)循环中 in代表这个对象是从这个列表取出

在for (item in listOf.indices){//其实就是区间迭代循环

这个循环中,listOf.indices的结果其实就是个区间

下载测试代码

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐