学习kotlin系列之一

1、为什么使用kotlin?

1)简洁(数据类扩展方法区间)
2)空值安全(针对空值处理的运算符)
3)百分之百兼容java scale
4)函数式编程JDK1.8lambda表达式
5)协程(thread)
6)DSL(领域特定语言)

java和kotlin有哪些区别:

java是声明式语法
声明式没有no return value

kotlin是表达式语法
表达式有return value

2、kotlin中的var和val

var即定义可变变量val定义不可变变量

/**
 * var 和val
 * 项目中开发尽量使用val ,实在不行再使用var
 */
var b: Int = 10

fun main(args: Array<String>) {
    //可变变量
    var a: Int = 10
    a = 20
    val d = 23
//  val d=20
    //不可变变量
    println(a)
}

如果可变变量使用val会报错提示

3、kotlin中的字符串

1)字符串原样输出
第一种:

 val place="浙江省\n杭州市\n拱墅区"

第二种:

 val place1="""
        浙江省
        杭州市
        西湖区
    """.trimIndent()

2)字符串删除空格

使用.trimMargin(“需删除的字符”)方法

 val str = """
        //呵呵
        //哈哈               
        //妮妮
    """.trimMargin("//")

3)字符串比较

使用equals和 == 比较的字符串的值即字符串的内容,而kotlin使用 === 比较的是内存地址

val str1 = "abc"
    val str2 = String(charArrayOf('a', 'b', 'c'))
    //equals 比较的是字符串的值
    println(str1.equals(str2))
//比较的是字符串值
    println(str1 == str2)
//比较的是内存地址
    println(str1 === str2)

4)字符串切割

 val str = "哈哈.妮妮-乐乐"
    //多条件切割,返回的是带逗号的字符串
    val result = str.split(".", "-")

5)字符串截取

 val path = "/Users/yole/kotlin-book/chapter.adoc"
    //需求
    //获取前6个字符
    println(path.substring(0, 6))
    println(path.substring(0..5))//左闭右闭
    //把第一个r之前的字符截取
    println(path.substringBefore("r"))
    //把最后个r之前的字符截取
    println(path.substringBeforeLast("r"))
    //把第一个r之后的字符截取
    println(path.substringAfter("r"))
    //把最后个r之后的字符截取
    println(path.substringAfterLast("r"))

结果

/Users
/Users
/Use
/Users/yole/kotlin-book/chapte
s/yole/kotlin-book/chapter.adoc
.adoc

6)字符串模板

 //说明 里面可以放函数等等
    val result:String="哈哈${"妮妮"}"
发布了59 篇原创文章 · 获赞 13 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/Hunter2916/article/details/103230753