1,基本数据类型
Kotlin 的数据类型有 Byte、Short、Int、Long、Float、Double 、String不是数值类型, 是一个独立的数据类型。
学过java的应该都知道它的取值范围 kotlin你们数据类型全是大写字母开头。
Byte的取值范围-128~127
Short的取值范围为-32768~32767
Int的取值范围为-2147483648~2147483647
Long的取值范围为-9223372036854774808~9223372036854774807
Float的取值范围为3.402823e+38 ~ 1.401298e-45(e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方)
Double的取值范围为1.797693e+308~ 4.9000000e-324
String 是字符串类型
每个数值类型都支持下面的转换:
toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char
/*
kotlin 注释和 java JavaScript 的注释一样
//单行注释
/**/ 代码块注释
*/
//声明全局常量
val number = 10
//申明全局变量
var number1 = 11
fun main(args: Array<String>) {
//变量申明
//计算机给我一块内存,名字叫i里面存储的数据为18
var i = 16
//当前变量无法存储999999999999 当i = 16的时候 已经默认数据类型为 Int 此处会报错
i = 999999999999
//s 就是一个字符串类型
var s = "haha"
//我们也可以申明类型
var j:Int = 10
var a:String = "sssssssssssss"
//kotlin 是智能数据类型推算 如果不指定类型 也不指定值 就会报错
var b
//常量申明
//val 声明常量
val name = "eclipse"
//申明的常量不能更改值否则会报错 此处会报错
name = "kotlin"
}
2,Boolean 和其他的数据类型在使用上没什么区别 它的值有 true false
fun main(args: Array<String>) {
printStr();
}
fun printStr(){
var num1 = Math.sqrt(7.0)
var num2 = Math.sqrt(6.0)
println("7开平方的值 大于 6开平方的值-->>" + (num1 > num2))
println("7开平方的值 小于 6开平方的值-->>" + (num1 < num2))
}
控制台输出
7开平方的值 大于 6开平方的值-->>true
7开平方的值 小于 6开平方的值-->>false
3,数据结构
Array在 Kotlin 中由 Array 类表示,有 get 和 set 方法(通过运算符重载可以由[]调用),以及 size 方法,以及一些常用的函数:
class Array<T> private () {
fun size(): Int
fun get(index: Int): T
fun set(Index: Int, value: T): Unit
fun iterator(): Iterator<T>
//...
}
和Java不一样,Kotlin 的数组是容器类, 提供了 ByteArray, CharArray, ShortArray, IntArray, LongArray, BooleanArray, FloatArray, and DoubleArray。
通过arrayof() 创建数组 ,通过 ***ArrayOf 创建指定类型的数组
4,List
List是容器,kotlin可也通过 listof()创建List
//声明list不指定类型数组 自动匹配类型
var list = listOf("aa","bb","Ccc")
//声明list指定类型数组 list:List<T> 可以是任何对象
var list1:List<Int> = listOf(1,2)
5,Map
map是<key,value>的方式储存数据 和java 是一样的 kotlin通过mapOf创建 map
var map = mapOf("1" to "ys","2" to "ll")
var map1 = hashMapOf("1" to "ys","2" to "ll")
var map2 = linkedMapOf("1" to "ys","2" to "ll")
var map3 = mutableMapOf("1" to "ys","2" to "ll")
var map4 = sortedMapOf("1" to "ys","2" to "ll")
var value = map4.get("1")
println(value)
var maps = TreeMap<String,String>()
maps["1"] = "aaa"
maps["2"] = "bbb"
maps["3"] = "ccc"
//等等 。。。
6,Set
Set是没有重复项的容器, Kotlin提供setOf创建Set
var intSet: Set<Int> = setOf(1, 2, 3, 4, 5, 6, 7)
var hashset:HashSet<Student> = hashSetOf(
Student("ys", "25", 2014, "978-15185554445"),
Student("ll", "24", 2014, "978-15168454887"))
var treeset:TreeSet<Int> = sortedSetOf(11, 0, 9, 11, 9, 8)
有一些相关的包需要导入
import java.util.TreeMap
import java.util.SortedMap
import java.util.TreeSet
import java.util.HashSet
网友评论