安卓学习笔记------kotlin基本数据类型

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

比较两个数字

Kotlin 中没有基础数据类型,只有封装的数字类型,你每定义的一个变量,其实 Kotlin 帮你封装了一个对象,这样可以保证不会出现空指针。数字类型也一样,所有在比较两个数字的时候,就有比较数据大小和比较两个对象是否相同的区别了。
在 Kotlin 中,三个等号 === 表示比较对象地址,两个 == 表示比较两个值大小。

fun main(args:Array){
  val a:Int = 10000
  print(a===a)//返回true,值相等,对象地址相等
  //经过了装箱,创建了两个不同的对象
  val boxedA :Int?=a
  val anotherBoxedA:Int?=a

  println(boxedA === anotherBoxedA) //  false,值相等,对象地址不一样
    println(boxedA == anotherBoxedA) // true,值相等
}
类型转化

由于不同的表示方式,较小类型并不是较大类型的子类型,较小的类型不能隐式转换为较大的类型。 这意味着在不进行显式转换的情况下我们不能把 Byte 型值赋给一个 Int 变量。
错误例子

val b: Byte = 1  
val i: Int = b 

正确例子

val b: Byte = 1 
val i: Int = b.toInt() 

每种数据类型都有下面的这些方法,可以转化为其它的类型:

toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char
数组

数组用类 Array 实现,并且还有一个 size 属性及 get 和 set 方法,由于使用 [] 重载了 get 和 set 方法,所以可以通过下标很方便的获取或者设置数组对应位置的值。
数组的创建两种方式:一种是使用函数arrayOf();另外一种是使用工厂函数。

fun main(args:Array){
  val a=arrayof(1,2,3)
  val b=Array(3,{i-> (i * 2) })

     //读取数组内容
    println(a[0])    // 输出结果:1
    println(b[1])    // 输出结果:2
}
字符串

和 Java 一样,String 是可不变的。方括号 [] 语法可以很方便的获取字符串中的某个字符,也可以通过 for 循环来遍历:

for(c in str){
  print(c)
}

kotlin支持三个引号“”“扩起来的字符串,支持多行字符串

fun main(args:Array){
  val text="""
      多行字符串
      多行字符串
  """
print(text)
}

String可以通过trimMargin()方法来删除多余的空白

fun main(args:Array){
  val text="""
      多行字符串
      多行字符串
  """.trimMargin()
print(text)
}
字符串模板

字符串可以包含模板表达式 ,即一些小段代码,会求值并把结果合并到字符串中。 模板表达式以美元符($)开头,由一个简单的名字构成:

fun main(args:Array){
  val i=10
  val s="i=$i"//求值结果为i=10
  print(s)
}

或者用花括号扩起来的任意表达式

fun main(args:Array){
  fun main(args: Array) {
    val s = "runoob"
    val str = "$s.length is ${s.length}" // 求值结果为   "runoob.length is 6"
    println(str)
}
}

你可能感兴趣的:(安卓学习笔记------kotlin基本数据类型)