Kotlin 核心编程 (40):基础语法 2.5.2

阅读数:2 2019 年 12 月 25 日 15:34

Kotlin核心编程(40):基础语法 2.5.2

(字符串模板)

内容简介
本书不是一本简单介绍 Kotlin 语法应用的图书,而是一部专注于帮助读者深入理解 Kotlin 的设计理念,指导读者实现 Kotlin 高层次开发的实战型著作。书中深入介绍了 Kotlin 的核心语言特性、设计模式、函数式编程、异步开发等内容,并以 Android 和 Web 两个平台为背景,演示了 Kotlin 的实战应用。
全书共 13 章,分为 4 个部分:
热身篇—Kotlin 基础(第 1~2 章),简单介绍了 Kotlin 设计哲学、生态及基础语法,其中包括 Kotlin 与 Scala、Java 之间的关联与对比,以及 Kotlin 的类型声明的特殊性、val 和 var 的使用、高阶函数的使用、面向表达式编程的使用、字符串的定义与操作等内容;
下水篇—Kotlin 核心(第 3~8 章),深入介绍了面向对象、代数数据类型、模式匹配、类型系统、Lambda、集合、多态、扩展、元编程等 Kotlin 开发核心知识,这是本书的重点,其中涉及很多开发者特别关心的问题,比如多继承问题、模式匹配问题、用代数数据类型抽象业务问题、泛型问题、反射问题等。
潜入篇—Kotlin 探索(第 9~11 章),探索 Kotlin 在设计模式、函数式编程、异步和并发等编程领域的应用,其中包括对 4 大类设计模式、Typeclass 实现、函数式通用结构设计、类型替代异常处理、共享资源控制、CQRS 架构等重点内容的深入剖析;
遨游篇—Kotlin 实战(第 12~13 章),着重演示了 Kotlin 在 Android 和 Web 平台的实战案例,其中涉及架构方式、单向数据流模型、解耦视图导航、响应式编程、Spring 5 响应式框架和编程等内容。

我们再来举一个很常见的字符串字面量与变量拼接的例子:

复制代码
fun message(name: String, lang: String) = "Hi " + name + ", welcome to " + lang + "!"
>>> message("Shaw", "Java")
Hi Shaw, welcome to Java!

上述代码描述了一个消息模板函数,通过传入消息字段变量,最终返回消息字符串。然而,简简单单的一句话,竟然使用了 4 个加号,可见相当地不简洁。在 Java 中,这是我们经常会做的事情。

Kotlin 引入了字符串模板来改善这一情况,它支持将变量植入字符串。我们通过它来修改上面的 message 函数。

复制代码
fun message(name: String, lang: String) = "Hi ${name}, welcome to ${lang}!"
>>> message("Shaw", "Kotlin")
Hi Shaw, welcome to Kotlin!

这与声明一个普通的字符串在形式上没什么区别,唯一要做的就是把变量如姓名,通过 ${name}的格式传入字符串。通过对比我们可以明显看出,字符串模板大大提升了代码的紧凑性和可读性。

此外,除了变量我们当然也可以把表达式通过同样的方式插入字符串中,并且在 ${expression}中使用双引号。如:

复制代码
>>> "Kotlin has ${if ("Kotlin".length > 0) "Kotlin".length else "no"} letters."
Kotlin has 6 letters.

Kotlin核心编程(40):基础语法 2.5.2

购书地址 https://item.jd.com/12519581.html?dist=jd

评论

发布