Kotlin学习笔记--Kotlin之语言基础

本文是Kotlin学习笔记,详细介绍了Kotlin的基础知识,包括包的声明、变量类型推断、流程控制语句如if、when、for和while,以及扩展函数、空指针安全等内容。Kotlin是一门静态类型语言,支持JVM和Android平台,具有类型推断、多范式和空安全等特点。
摘要由CSDN通过智能技术生成

Kotlin简介

Kotlin是一门静态类型编程语言,支持JVM平台、Android 平台等等支持与Android、java 完全互操作。
Kotlin语言特性:类型推断,多范式支持,可空性表达,扩展函数,模式匹配等等。
2017年Google I/O大会正式宣布将Kotlin语言列为Android官方语言。

Kotlin语言基础

1.包

在java中,我们通过包名+类名来唯一确定一个类。Kotlin沿袭了这一概念,同时进行了扩展,我们可以在.kt文件的开头声明package 命名空间,和这个文件所在的路径目录结构无序匹配。如果使用的类或者方法不在同一个package下,在开发过程中,AS会自动导入我们需要的包。

import com.example.fan.kotlindemo1.test.test.BaseKotlin//自动导入不同包下的类
import com.example.fan.kotlindemo1.test.testPackageFun//自动导入包级方法

不过鉴于java开发的习惯,我们一般不会在同一个目录结构下,使用不同的package

2.变量

2.1 声明变量

kotlin中一切都是对象,所以所有的变量也都是对象。
kotlin 中的变量分为var可变与val不可变变量。即val声明的变量无法再次赋值。

2.2 变量类型推断

大部分的情况下,在kotlin中,我们声明变量不需要声明变量类型,可以交由编辑器自动推断。如

val i = 1//此时i为int类型
val s = "sss"//此时s为String类型

但是类型推断并不是所有的。如果需要进行类型转换,如float转换为double,则需要显式的调用类型转换函数

 val l = 1.1f
 val d:Double = l.toDouble()

2.3 变量类型检测

is 运算符可以检测一个表达式是否为某类型,有点类似于java 中的instance。
如果一个局部变量已经通过is 判断出为某类型。则在检测后的分支可以直接当成该类型使用而不需要显示转换。

2.4 字符串与模板表达式

Kotlin中,原始字符串可以由三重引号 “”" 分隔,可以包含换行符等任何字符。字符串中可以包含模板表达式,以$开始。

        var str = """ println("(++c):" + (++c))"""
        println(str)
        println("$str 的最后一个字符为 ${
     str.last()}")
        //I/System.out:  println("(++c):" + (++c))
        //I/System.out:  println("(++c):" + (++c)) 的最后一个字符为 )

3.流程控制语句

3.1 if

在kotlin中, if 是一个表达式,即它会返回一个值。
Kotlin中没有true?1:0这样的三元表达式。

val result = if(a>b) a else b //类似三元表达式。

if的分支可以是代码块,最后的表达式作为该块的值

	baseKotlin.test1(10,5)
	fun test1(a:Int,b:Int) {
   
        val result = if (a>b)a-b else a+b
        val result1 = if (a<b){
   
            val r = a*b
            r+1
        }
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值