0


【kotlin】第一天

❤️ Author: 老九
☕️ 个人博客:老九的CSDN博客
🙏 个人名言:不可控之事 乐观面对
😍 系列专栏:kotlin急速通关

文章目录

kotlin的空检测机制

  • 需要加上问号
class NullStudy{var info:String=""}funmain(args: Array<String>){var name:String ?=null//todo:第一种补助措施
    name?.length
    println(name)//todo:无论是不是null都执行
   name!!.length
    //todo:if条件if(name !=null){
        name.length
    }}

val,var类型

  • val是可读不可改的类型
  • var是可读可改
  • 尽量使用val,如果此变量后续需要更改,使用var
funmain(args: Array<String>){val name:String ="Derry"// name="Derry2"println("name:$name")var sex:Char="c"

    sex='A'println("sex:$sex")}

类型推断

  • kotlin是静态语言(编译期就确定了类型)
funmain(args: Array<String>){//    val name:String="Derry"//    val info:String ="woshizhu"val name="Derry"val info="woshizhu"val sex ='c'val age =35}

kotlin函数(函数)

在这里插入图片描述

  • kotlin中函数可以写在类里面,也可以写在类外面
funmain(){method01(99,"lisi")}//函数默认public//其实kotlin的函数,更规范,先有输入,再有输出privatefunmethod01(age: Int,name:String):Unit{println("你的姓名是:${name},你的年龄是:${age}")}
//Unit类型 == java中的void类型funadd(number1:Int,number2:Int):Int{return number1+number2;}//返回值类型推断//如果不知道结果是什么类型,可以直接写=funadd2(number1:Int,number2:Int)=number1+number2
funadd3(number1:Int,number2:Int)=number1+number2.toDouble()

kotlin第一个程序

funmain(){println("helloworld")//TODO 声明变量var name : String ="lmp"
    name ="Lance"println(name)}

数据类型

  String   字符串
    Char     字符
    Boolean  true/false
    Int      整型
    Double   小数
    List     集合
    Set      无重复的元素集合
    Map      键值对的集合

编译时常量

  • 只能写在方法外面,如果定义在函数之内,就必须在运行时才能调用函数赋值,何来编译时常量一说
//定义编译时常量constval PI=3.14funmain(){//    const var PI = 45}

range表达式(in)

funmain(){val number =148//左闭右闭// range 范围从哪里 到哪里if(number in10..59){println("不及格")}elseif(number in0..9){println("不及格并且分数很差")}elseif(number in60..100){println("及格")}elseif(number !in0..100){println("分数不在0到100范围内")}}

when表达式

funmain(){val week =6//Any == Objectval info =when(week){1->"今天是星期一,非常忙碌的一天开会"2->"今天是星期二,非常忙碌的一天开会"3->"今天是星期三,非常忙碌的一天开会"4->"今天是星期四,非常忙碌的一天开会"5->"今天是星期五,非常忙碌的一天开会"6->"今天是星期六,非常忙碌的一天开会"7->"今天是星期七,非常忙碌的一天开会"else->{println("养猪去了")}}println(info)}

String 模板

funmain(){val garden ="黄石公园"val time =6;println("今天天气很晴朗,去${garden}玩,玩了${time}小时")//KT的if是表达式,所以可以更灵活,java的if是语句val isLogin =trueprintln("server response result:${if(isLogin)"恭喜你,登陆成功√"else"不恭喜你,登录失败"}")}

函数参数的默认参数

funmain(){action01("list",89)action02("lsit")action03()}privatefunaction01(name:String,age:Int){println("$name,$age")}privatefunaction02(name:String,age:Int =77){println("$name,$age")}privatefunaction03(name:String="王五",age:Int =77){println("$name,$age")}

具名函数参数

funmain(){loginAction(age=99,userpwd="1233",username ="de",phonenumber ="1123456")}privatefunloginAction(username:String,userpwd:String,phonenumber:String,age:Int){println("${username},${userpwd},${phonenumber},${age}")}

Nothing类型特点

funmain(){show(-1)}privatefunshow(number:Int){when(number){//TODO()这个就像抛出异常一样-1->TODO("没有这种分数")in0..59->println("分数不及格")in60..70->println("分数及格")in71..100->println("分数优秀")}}interface A {funshow()}class AImpl : A{overridefunshow(){//下面这句话不是中止提示,会终止程序TODO("Not yet implemented")}}

————————————————————————
♥♥♥码字不易,大家的支持就是我坚持下去的动力♥♥♥
版权声明:本文为CSDN博主「亚太地区百大最帅面孔第101名」的原创文章

标签: kotlin android java

本文转载自: https://blog.csdn.net/partworld/article/details/125328060
版权归原作者 亚太地区百大最帅面孔第101名 所有, 如有侵权,请联系我们删除。

“【kotlin】第一天”的评论:

还没有评论