Kt学习笔记(一) 语法基础

一、基本语法

1、1 定义变量
  • 在Kotlin中 数据类型要放在变量后面,并且用冒号(:)分割

  • 定义变量用var,常量用val

  • 在kotlin中,数据类型都以大写字母开头

  • 在定义变量时未进行初始化,必须指定数据类型,在定义变量时进行初始化, 可以不指定数据类型

var n: Int = 30;  //定义变量
var ok: Int;  //定义一个变量, 没有进行初始化
val m: Int = 20;  //定义一个常量 不需要设置m
ok = 40;  // 对变量赋值
// m = 40;  编译出错 var  cannot be reassigned
var k = 100;  //自动推导变量k的数据

1、2 定义方法
  • 1、必须包含fun关键字,函数名
  • 2、如果函数有返回值,返回值类型在函数定义部门末尾指定,与函数用(:)分开
  • 3、如果没有返回值,可以返回Unit,也可以什么都不返回
fun add(m : Int ,n : Int):Int
{
    return m + n
}
fun process(m: Int):Unit
{
    print(m)
}

1、3 注解的使用
fun zhushi()
{
    //单行注释
    /*
       块注释
            */
    /**
     hello
        /* World*/
            这是一个嵌套注释
     */
}

二、基本数据类型

2、1数据类型

在这里插入图片描述

var price: Double = 12.4
  var flag: Boolean = true
  var v1: Int = 100
  var v2: Double = 20.2
  var m = 20
  var n: Byte = 20
  //   m = n  编译报错 Type mismatch 无法将byte转换为int
  var x : Long  = 20
  val value : Short = 20

Kt 数据类型之间的转换

/**
   Kt数据类型之间的转换
   toByte()
   toShort()
   toInt()
   toLong()
   toFloat()
   toDouble()
   toChar()
   */
  m = n.toInt();
  x = value.toLong();

2、2 字符类型
/**
     1、Kt中字符不能看作是数字
     2、字符用单引号
     */
    var c : Char = 'h'
    /**
     Kt支持反斜杠(\)转义符
     \t : 制表符
     \b : 退格符
     \n : 换行符
     \r : 回车符
     \' : 单引号
     \" : 双引号
     \\ : 反斜杠
     */
}
fun decimalDigitVale(c : Char) : Int
{
    if( c !in '0' ..'9'){
        throw  IllegalArgumentException("Out of range")
    }
    //将指定字符转化为对应的ASCII  然后减去0对应的ASCII
    return c.toInt() - '0'.toInt();
}

2、3 Boolean类型
fun testBool()
    {
        var flag1 : Boolean = true
        var flag2 : Boolean = false;
       	print( !flag2)  //进行逻辑非 操作
        print( flag1 || flag2)  //进行逻辑或 操作
        print(flag1 && flag2)  //进行逻辑与 操作
    }

2、4 数组
// 1、使用arrayOf函数定义可以存储任意值的数组

    var arr1 = arrayOf(1,2,3,'a')
    print(arr1[3])

    arr1[2] = 'b'  //对数组元素赋值
    print(arr1[2])

    //2、使用arrayOfNulls函数定义指定长度的空数组(数组元素中没有值)
    var arr2 = arrayOfNulls<Int>(10)
    print("arr2的长度:"+arr2.size)


    //3、使用Array类的构造器指定数组长度和初始化数据的方式定义数组
    //使用Array类的构造器定义数组  其中第二个参数是指初始化每一个元素的值
    val arr3 = Array(10,{i -> (i * i).toString()})

    //4、使用intArrayOf,shortArrayOf等函数定义指定类型的数组,并初始化
    var arr4 : IntArray = intArrayOf(20,30,40,50)
    print("arr4[2] = " + arr4[2])
2、5 字符串

在Kt中 使用String表示字符串类型,有两类字符串

-》 普通字符串 可以在字符串中加上转义符,如 \n ,会让转义符后面的字符串换到下一行,这种字符串需要放在双引号中

-》 保留原始格式的字符串,不能使用字符串,如果字符串中带有格式,如换行,直接写在字符串中,这种字符串需要放在3个引号对中

//第一类字符串
var s1 = " hello \n world"
val  s2 = "你好 \n  世界"
println(s1)
println(s2)
//第二种字符串  保留原有格式
var s3 = """"
        Hello
            World
                I  LOVE  U
        """
println(s3)

在这里插入图片描述

2、6 字符串模板

字符串模版: 在字符串中添加若干个占位符,内容会在后期指定

模板使用美元符号($)设置,如"i = i " 中 的 i"中的 i"i就是一个占位符,其中$后面的i是变量,随着i的变化,"i = $i"中的值也随着变化

val i = 10
    val s1 = "i = $i"
    println(s1)

    var s2  = "abc"
    val  str  = "$s2 的长度是 ${ s2.length}"

    println(str)

在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值