Kotlin

1.Kotlin语言声明变量与内置数据类型

fun main() {
    println("Hello word");
    //声明变量 var 可读可改 name 变量名  String类型 一只小猪 值
    var name: String = "一只小猪";
    // TODO 内置数据类型
/*    String 字符串
      Char   单字符
      Boolean true/falase
      Int    整数
      Double 小数
      List   集合
      Set    无重复元素集合
      Map    键值对的集合   */
    println(name);
}

2.Kotlin语言的只读变量

fun main() {
    //默认提示:变量永远不会被修改,建议改成val == 不可改变的(只能读取不能修改)
    var info: String = "MyInfo";
    println(info);
}

3.Kotlin语言的类型推断

fun main() {
    //提示:Explicitly given is redundant here
    //显示给定的类型在这里是多余的
    var info : String = "三只小虎"
    println(info)
    var age = 98
    var xxx = "x"
    println("" + age)
    println("" + xxx)
}

4.Kotlin语言的编译时常量

//编译时常量只能是常用的基本数据类型,
//String Double Int Float Long Short Byte Char Boolean

const val PI = 3.1415  //定义编译时常量
//编译时常量只能在函数之外定义,为什么? 答:如果在函数之内定义,就必须在运行时才能调用函数默认值,何来编译时常量一说
//结论:编译时常量只能在函数之外定义,就可以在函数编译期间初始化了
fun main() {
    //提示:修饰符const不能用于局部变量
    //const val PI = 45;
}

5.查看Kotlin反编译后的字节码

6.Kotlin语言的range表达式(相当于if else)

fun main() {
    var number = 148;
    //number in 重那里到哪里
    if (number in 10..59) {
        println("不及格")
    } else if (number in 0..9) {
        println("不及格并且分数很差")
    } else if (number in 60..100) {
        println("及格")
    } else if (number !in 0..100) {
        println("分数不在0到100范围内")
    }
}

7.Kotlin语言的when表达式

fun main() {
    var number = 5;
    //number in 重那里到哪里
    var info = when (number) {
        1 -> "今天是星期一"
        2 -> "今天是星期二"
        3 -> "今天是星期三"
        4 -> "今天是星期四"
        5 -> "今天是星期五"
        6 -> "今天是星期六"
        7 -> "今天是星期七"
        else -> {
            println("今天是休息的一天")
        }
    }
    println(info)
}

8.Kotlin语言的String模板

fun main() {
    var garden = "西湖"
    var time = 6
    println("今天天气很晴朗,去${garden}玩,玩了${time}小时")
    var isLogin = true
    println("正在登录中...${if (isLogin) "恭喜您登录成功" else "登录失败了"}")
}

9.Kotlin语言的函数

//函数默认是public
//其实Kotlin函数更规范,先有输入,再有输出
private fun method01(age: Int, name: String): Int {
    println("您的姓名是${name},您的年龄是${age}")
    return 200
}

//上面的Kotlin函数会变成下面的JAVA代码
private static final int method01(int age,String name){
    System.out.println("您的姓名是 " + name + " 您的年龄是 " + age");
}

10.Kotlin函数中的默认参数

fun main() {
    action1("小白兔", 22)
    action3("小白兔")
    action4()
}

private fun action1(name: String, age: Int) {
    println("我的名字是${name},我的年龄是${age}")
}

private fun action3(name: String, age: Int = 77) {
    println("我的名字是${name},我的年龄是${age}")
}

private fun action4(name: String = "王五", age: Int = 20) {
    println("我的名字是${name},我的年龄是${age}")
}

11.Kotlin语言的具名函数参数

fun main() {
    loginAction(username = "小白兔", phonenumber = "999", userpassword = "123456", age = 80)
}

private fun loginAction(username: String, userpassword: String, phonenumber: String, age: Int) {
    println("username : $username, userpassword : $userpassword, phonenuber : $phonenumber , age : $age")
}

12.Kotlin语言的Unit函数特点

fun main() {
}

//相当java语言的void关键字(void是无参数返回的,忽略类型)但是它是关键字不是类型
//:Unit不写默认也会有, : Unit代表 无参数返回的 忽略类型 == Unit类型从类
private fun doWork(): Unit {

}

13.Kotlin语言的Nothing类型特点

fun main() {
    show(99)
}

private fun show(age: Int) {
    when (age) {
        -1 -> TODO("没有这种分数")
        in 0..59 -> "分数不及格"
        in 60..70 -> "分数及格"
        in 71..100 -> "分数优秀"
    }
}

interface A {
    fun show()
}

class AImpl : A {
    override fun show() {
        //下面这句话不是注释提示,会终止程序的
        TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
    }

}

14.Kotlin反引号中函数名特点

fun main() {
    //第一种情况
    `登录功能 8月8日测试环境下,测试登录功能`("小白兔", "12345")
    //第二种情况 in is 再Kotlin里面是关键字想引用java 怎么办呢? 加 `
    Ktbase21.`is`()
    Ktbase21.`in`()
}

private fun `登录功能 8月8日测试环境下,测试登录功能`(name: String, pwd: String) {
    println("模拟用户名是$name,密码是$pwd")
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值