Kotlin学习笔记(二)——示例篇一

介绍了基本的一些语法,现在用最真实的Demo,来进行深入学习KotLin!
参考链接是:https://try.kotl.in
在Intellij IDEA 开发环境里,新建一个kt文件,Kotlin学习笔记(二)——示例篇一_第1张图片
即可进行kt文件的开发编辑!

示例一

任何语言最经典的Demo——hello world:

/** * We declare a package-level function main which returns Unit and takes * an Array of strings as a parameter. Note that semicolons are optional. */

fun main(args: Array<String>) {
    println("Hello, world!")
}

分析:上面的代码没有什么可以分析的,就写了一个主函数,并且打印“hello ,world!”, 唯一的可以参考的是参数,写法是先写变量名,跟着一个”:“后面是变量的类型。同时和Java的一个区别是每一条语句之后,不需要加”;“ 同时该函数是没有返回值的,所以省略了Unit关键字

示例二

/** * Line 13 demonstrates string templates and array access. * See this pages for details: * http://kotlinlang.org/docs/reference/basic-types.html#strings * http://kotlinlang.org/docs/reference/basic-types.html#arrays */

fun main(args: Array<String>) {
    if (args.size() == 0) {
        println("Please provide a name as a command-line argument")
        return
    }
    println("Hello, ${args[0]}!")
}

分析:字符串动态拼接使用 ${ } 来进行字符串的动态拼接!

示例三

/** * Line 2 demonstrates the for-loop, that would have been called "enhanced" * if there were any other for-loop in Kotlin. * See http://kotlinlang.org/docs/reference/basic-syntax.html#using-a-for-loop */

fun main(args: Array<String>) {
    for (name in args)
        println("Hello, $name!")
}

分析:使用的是增强for循环来进行集合遍历,循环写的语法是:

for(变量名 in 变量集合)

扩展:把示例二和实例三进行比较,可以发现字符串替换的方式不一样,在此写个Demo看一下运行的结果,发现其实没有什么区别(如果您知道,希望可以告诉我一下哈):

fun main(args: Array<String>) {

    println(myName("张三"))
    println(myNameB("李四"))
}

fun  myName( name : String) : String{
    return "Hello, ${name}!"
}
fun  myNameB( name : String) : String{
    return "Hello, $name!"
}

运行结果:

Hello, 张三!
Hello, 李四!

示例四

/** * In this example, `val` denotes a declaration of a read-only local variable, * that is assigned an pattern matching expression. * See http://kotlinlang.org/docs/reference/control-flow.html#when-expression */

fun main(args: Array<String>) {
    val language = if (args.size() == 0) "EN" else args[0]
    println(when (language) {
        "EN" -> "Hello!"
        "FR" -> "Salut!"
        "IT" -> "Ciao!"
        else -> "Sorry, I can't greet you in $language yet"
    })
}

分析:上面的示例使用val 关键字进行变量的声明,通过一个表达式来确定变量的值,使用if -else进行选择;另外使用了一个when(),when-else 必须配合使用;符合某一条件可以使用 -> 或者使用{} 进行包裹!
println()方法是在哪呢?Java可以导包,但是Kotlin没有发现导包的痕迹?经过查找,println()方法在包kitlon.io 包下,具体API地址:
http://www.kotlinlang.org/api/latest/jvm/stdlib/kotlin.io/index.html

示例五

/** * Here we have a class with a primary constructor and a member function. * Note that there's no `new` keyword used to create an object. * See http://kotlinlang.org/docs/reference/classes.html#classes */

class Greeter(val name: String) {
    fun greet() {
        println("Hello, ${name}");
    }
}

fun main(args: Array<String>) {
    Greeter(args[0]).greet()
}

分析:以上代码创建了一个含有一个参数的构造函数类,并且该类有一个成员方法。调用类的方法并没有像Java一样需要new一下,而是直接调用构造函数,就像上面的Demo,
Greeter(args[0]).greet()

以上就是一些简单的Demo学习!不足之处或理解有错误的地方请不吝指正,在此提前感谢!

你可能感兴趣的:(demo,study,Kotlin,KT)