kotlin基础语法

Posted 伟雪无痕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kotlin基础语法相关的知识,希望对你有一定的参考价值。

一.Kotlin 基本数据类型

1.Kotlin 的基本数值类型包括 Byte、Short、Int、Long、Float、Double 等。不同于 Java 的是,字符不属于数值类型,是一个独立的数据类型,eg:如下表

类型位宽度占用字节数
Double648
Float324
Long648
Int324
Short162
Byte81

数据类型转换方式,eg:

toByte(): 转换到Byte类型
toShort(): 转换到Short类型
toInt(): 转换到Int类型
toLong(): 转换到Long类型
toFloat(): 转换到Float类型
toDouble(): 转换到Double类型
toChar(): 转换到Char类型

2.定义一些常量和变量的

1).可变变量定义:var 关键字

var <标识符> : <类型> = <初始化值>

2).不可变变量定义:val 关键字,只能赋值一次的变量(类似Java中final修饰的变量)

val <标识符> : <类型> = <初始化值>
    var m: Int=30
    var flag:Boolean=true
    val value1 : Int=200
    val value2: Double=30.5

备注: java和kotlin变量的区别

1'.位置不同,kotlin中数据类型放到变量的后面,并用冒号(:)分隔,与java相反

2'.关键不同,kotlin中定义变量用var开头,定义常量用val开头

3'.数字类型首字母大小写不同,kotlin中数据类型都以大写字母开头,java中只有类、接口等复杂的数据类型的名字才采用首字母大写的方式

4'.kotlin中常量与变量都可以没有初始化值,但是在引用前必须初始化,编译器支持自动类型判断,即声明时可以不指定类型,由编译器判断

二.包声明,和java一样,代码文件的开头一般为包的声明,且Kotlin 文件以 .kt 为后缀,eg:

package com.example.kotlin

class PersonTest(val name:String) 
    fun greet()
        println("Hi,$name")
    

    var m: Int=30
    var flag:Boolean=true
    val value1 : Int=200
    val value2: Double=30.5


fun main(args:Array<String>)
    PersonTest("kotlin!").greet()

如果没有指定包,默认为 default 包,有多个包会默认导入到每个 Kotlin 文件中:

kotlin.*
kotlin.annotation.*
kotlin.collections.*
kotlin.comparisons.*
kotlin.io.*
kotlin.ranges.*
kotlin.sequences.*
kotlin.text.*

三.函数定义, 函数定义使用关键字 fun,参数格式为:参数 : 类型,其中函数的变长参数可以用 vararg 关键字进行标识,eg:

fun sum(a:Int,b:Int):Int
    return a+b


fun getName():String
    return "jon"


fun vars(vararg values:Int)
    for (value in values)
        println(value)
    

四.注释方式,支持单行注释和块注释

单行注释
// 这是一个单行注释

块注释
/* Hi kotlin */

五.字符串模板,模板使用美元符号($)开头,eg:"i=$i“中的$i就是一个占位符,其中$后面的i是变量,随着i变化,eg:

 val i=100
    val j="i=$i" //相当于"i=100"
    println(j)

    val k="1234"
    var str="$k length is $k.length" //使用字符串获取k的长度
    println(str)

六.数组

  //使用函数arrayOf()
    val arr1= arrayOf(1,2,3,'a',4)
    println(arr1[3])
    arr1[2]='b'
    println(arr1[2])

    var arr2=Array(5,i->(i*i).toString())
    println(arr2[3])

    //使用IntArray数组,省去了装箱操作,因此效率更高,其用法同Array一样,另外也可以定义ByteArray, ShortArray和IntArray定义类似
    var arr3:IntArray= intArrayOf(2,4,6,8,10)
    println("arr3[2]="+arr3[2])

以上是关于kotlin基础语法的主要内容,如果未能解决你的问题,请参考以下文章

kotlin基础语法

go基础语法-常量与枚举

Kotlin 常用API汇总

Kotlin 常用API汇总

Kotlin 常用API汇总

Kotlin 常用API汇总