本文适合有Java基础的人html
相比java,省略括号,能够自动判断类型,省略new关键字,空指针捕获java
kotlin文件(kt文件)中,只有要下列的方法,就能够运行,无需像以前的java那般,还要定义个类,写上main
方法api
fun main(args: Array<String>) { println("hello world") }
这是说是基本数据类型,其实下面的这些都是kotlin封装好的类,就是至关于Java中的Integer,FLoat等包装类,数值会自动包装。jvm
这样的好处就是,数值是一个对象,能够保证不会出现空指针。函数
类型 | 位宽度 |
---|---|
Double | 64 |
Float | 32 |
Long | 64 |
Int | 32 |
Short | 16 |
Byte | 8 |
注意,kotlin中的字符类型Char不属于基本数据类型post
因为是对象,因此比较得比较内容,kotlin中封装了==
和===
两个运算符供咱们比较不一样的内容和对象地址this
===
表示比较对象地址,两个 ==
表示比较两个值(内容)大小spa
类型转换:3d
上面的基本数据类型都有下面的方法,负责类型转换指针
//显示转换 val num: Byte =1 val num1 = num.toInt
两个关键字:
val
声明一个只读常量var
声明一个变量val
至关于使用了java中的final
关键字修饰变量(声明常量) var
就是和以前声明
//声明一个整型常量num,数值为12,以后没法对num进行赋值操做 val num: Int = 12 //kotlin的自动判断类型特性,上面的式子也能够这样写 val num = 12 //声明一个常量,赋值过一次以后,没法再次对常量进行赋值 val num: Int num = 12
//kotlin的基本数据类型变量,还能够加上“_”来便于阅读,不影响数值 //下面的num仍是一个Int类型的数据 val num = 1_000_000 //小数也能够加上“_” val num = 1.02_120
//和java同样,字符串里能够包含转义字符 val str = "hello world\n" println(str)
//里面的\n也会打印出来 val str = """hello world\n""" println(str)
//去除前面的“|” val text = """ |Tell me and I forget. |Teach me and I remember. |Involve me and I learn. |(Benjamin Franklin) """.trimMargin() //去除前面的“>” val text = """ >Tell me and I forget. >Teach me and I remember. >Involve me and I learn. >(Benjamin Franklin) """.trimMargin(">")
$
开头,后面可接一个变量,或者是用花括号,里面写一个表达式
val num = 5 val text = "i = $num"//输出“i=5” val text = "the length = ${arrays.length}" //显示$,$不支持转义 val price = "${'$'}9.99" println(price)
lastIndex(最后的下标值),length
如下加粗的方法都是kotlin中String新增长的方法
方法 | 描述 |
---|---|
String [index] | 取String的指定下标的元素 |
**String first() ** | 取第一个元素 |
**String last() ** | 取最后一个元素 |
indexOf | |
indexLastOf | |
String plus(text) | 和“+”效果同样,链接字符串 |
Boolean equals(text[,ignoreCase]) | 第二个参数不写,至关于以前说的“==”比较内容,第二个参数为true,则忽略内容大小写就行比较 |
String substring(startIndex[,endIndex]) | |
String substringBefore() | 截取第一个出现的字符串前面的字符串内容 |
String substringAfter() | 截取第一个出现的字符串后面的字符串内容 |
String substringBeforeLast() | 截取最后一个出现的字符串前面面的字符串内容 |
String substringAfterLast() | 截取最后一个出现的字符串后面的字符串内容 |
replace() | 替换 |
replaceFirst() | 替换第一个出现的字符串 |
replaceBefore() | 替换第一个出现的字符串前面的内容 |
replaceAfter() | 替换第一个出现的字符串后面的内容 |
replaceBeforeLast() | 替换最后一个出现的字符串前面的内容 |
replaceAfterLast() | 替换最后一个出现的字符串后面的内容 |
spilt() | |
Boolean isBlank() | 字符串是否全是空格 |
Boolean isEmpty() | 字符串长度是否为0,为0返回true |
String reversed() | 字符串反转 |
String startsWith() | |
String endsWith() | |
String trim() | 清除空格 |
String drop(int) | 删除头部的几个元素并返回 |
String dropLast(int) | 删除末尾的几个元素并返回 |
replaceFirst()等:
val s = "this is starsone" //替换第一个is以前的内容 println(s.replaceBefore("is", "are"))//输出为areis is starsone //替换第一个is以后的内容 println(s.replaceAfter("is", "are"))//输出为thisare //替换最后一个is以前的内容 println(s.replaceBeforeLast("is", "are"))//输出为areis starsone //替换最后一个is以后的内容 println(s.replaceAfterLast("is", "are"))//输出为this isare
isBlank和isEmpty:
val text = " " println(text.isBlank())//输出为true println(text.isEmpty())//输出为fasle
drop和dropLast:
val text = "hello" println(text.drop(2))//输出为llo println(text.dropLast(2))//输出为hel
substringBefore等:
val text = "this is starsone" //截取第一个is以前的内容 println(text.substringBefore("is")) //截取最后一个is以前的内容 println(text.substringBeforeLast("is"))//注意,这里还包括空格 //截取第一个出现的is后面的内容 println(text.substringAfter("is")) //截取最后一个出现的is后面的内容 println(text.substringAfterLast("is"))
参考连接 关于字符串(String)经常使用操做汇总 kotlin text(有关于string的各类方法介绍) kotlin api文档 菜鸟教程 kotlin基本类型
原文出处:https://www.cnblogs.com/stars-one/p/11249014.html