kotlin 基础语法

前言导读

本专栏主要是分享kotlin 语言基础还有进阶语法的一些学习,也欢迎各位网友和同学前来互相交流和学习,谢谢大家

申明变量

kotlin 复制代码
/**
 *
 * 第一节课声明变量
 */
fun main() {
    var a:Int=5  // 申明变量 申明一个int 类型的数据
    println(a)
    var str:String="你好我是徐庆"   // 申明一个字符串
    println(str)

}

只读变量

kotlin 复制代码
fun main() {
    //只读取变量
    val str:String="你好世界"  // 只读变量
    //类型推断
    val  a="我是类型推断的数据"
    println(str)
    println(a)
    
}

字符串模板

kotlin 复制代码
//string模板
//模板支持在字符串的引号内放入变量值
//还支持字符串里计算表达式的值并插入结果,添加在$}中的任何表达式,都会作为字符串的一部分求值。

fun main() {
    val origin="Jack"
    val dest="Role"
    println("$origin love $dest")
    val  flag:Boolean=false
    println("Answer is ${if(flag) "我可以" else "对比起"}")
}

表达式

kotlin 复制代码
//表达式
//>if/else if表达式
//>range表达式
//●in A..B,in关键字用来检查某个值是否在指定范围之内。
//>when表达式
//允许你编写条件式,在某个条件满足时,执行对应的代码只要代码包含else if分支,都建议改用when表达式

fun main() {
  var age:Int=4
    if(age in 0..3){
        println("婴幼儿")
    }else if(age in 3..12){
        println("少儿")
    }else{
        println("未知")
    }


    if(age !in  0..3){
        println("我是少儿哈哈哈 ")
    }

    //when表达式
    val  shcool ="小学"
    val level:Any=when(shcool){
        "学前班"-> "幼儿"
        "小学" -> "少儿"
        "中学" -> "青少年"
        else->{
            println("未知哈哈哈")
        }
    }
    println(level)

}

函数的各种用法

kotlin 复制代码
//函数头
//可见性修饰符
//函数名
//返回类型
//:StringprivatedoSomething(age:lnt, flag:Boolean):fun
//        函数声明关键字
//函数参数

fun main() {
 println(doSomething(5,false))
    fix("徐庆",5)
    fix(age=10,name="测试")
    TODO("nothing")
    println("end nothing")
}

//Nothing类型
//>TODO函数的任务就是抛出异常,就是永远别指望它运行成功,返回Nothing类型
//public inline fun ToDO(reason: String): Nothing = throw NotImplementedError

private  fun  doSomething(age:Int ,flag:Boolean):String{
     return  "result"
}


//函数参数
//>默认值参
//》如果不打算传入值参,可以预先给参数指定默认值
//>具名函数参数
//如果使用命名值参,就可以不用管值参的顺序

fun  fix(name:String,age:Int=2){
    println(name+age)
}

//Unit函数
//不是所有函数都有返回值,Kotlin中没有返回值的函数叫Unit函数,
//也就是说他们的返回类型是Unit。在Kotlin之前,函数不返回任何东西用void描述,
//意思是"没有返回类型,不会带来什么,忽略它",
//也就是说如果函数不返回任何东西就忽略类型。但是,void这种解决方案无法解释现代语言的一个重要特征,泛型

反引号中的函数名

kotlin 复制代码
//反引号中的函数名
//>Kotlin可以使用空格和特殊字符对函数命名,
//不过函数名要用一对反引号括起来。为了支持Kotlin和Java互操作,
//而Kotlin和Java各自却有着不同的保留关键字,
//不能作为函数名使用皮引号括住函数名就能避免任何冲突,

fun main() {
    `test fun`();
    Myjava.`is`()

}

fun  `test fun`(){
    println("我是被反引号修饰的方法 ")
}
csharp 复制代码
public class Myjava {

    public  static  void   is(){
        System.out.println("我是is 方法 ");
    }
}
相关推荐
梦终剧1 天前
【Android之路】 Kotlin 的 data class、enum class、sealed interface
android·开发语言·kotlin
折翅鵬2 天前
Kotlin Value Class 全面解析:类型安全与零开销封装
kotlin
ClassOps2 天前
Android 12 SplashScreen启动屏
android·kotlin
heeheeai2 天前
决策树,随机森林,boost森林算法
算法·决策树·随机森林·kotlin·boost
用户092 天前
停止滥用 Dispatchers.IO:Kotlin 协程调度器的深度陷阱与优化实战
android·面试·kotlin
明飞19872 天前
isSuperclassOf 与is 与 ==的区别
kotlin
风起云涌~3 天前
【Android】kotlin.flow简介
android·开发语言·kotlin
魏思凡3 天前
爆肝一万多字,我准备了寿司 kotlin 协程原理
kotlin·源码阅读
studyForMokey3 天前
【Kotlin进阶】泛型的高级特性
android·开发语言·kotlin