kotlin精讲-第2章(6)字符串常见操作_下
2017-12-01 本文已影响331人
739c8d412b4c
Kotlin相比于Java
相比于java | 描述 |
---|---|
增强 | 支持三重引号,格式输出方便 |
增强 | 字符串模板,拼接字符串更强大 |
目标
要求 | 知识点 |
---|---|
掌握 | 三重引号使用 |
掌握 | 字符串模板使用的4种使用方式 |
三重引号
字符串输出的时候,想要输出一些特殊字符,需要用到转义字符串,比如\t,\b,\n,\r。转义字符串,在Kotlin里面也是支持的。
Kotlin还新增了一种做法,字符串可以由三重引号(”””)分割,可以直接包含任意的特殊字符,参考代码:

字符串模板:让字符串输出更容易
java字符串格式化
在java中,可以通过String类中的format方法对字符串进行格式化和拼接相关操作。format方法有两种重载形式:format(Stringformat, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Locale locale, String format, Object... args) 使用指定的语言环境,制定字符串格式和参数生成格式化的字符串。
format方法通常需要和转换字符进行配合实现不同数据类型到字符串的转换,下表列举部分转换字符串:
转换符 | 说明 | 示例 |
---|---|---|
%s | 字符串类型 | "mingrisoft" |
%c | 字符类型 | 'm' |
%b | 布尔类型 | TRUE |
%d | 整数类型(十进制) | 99 |
%x | 整数类型(十六进制) | FF |
%o | 整数类型(八进制) | 77 |
%f | 浮点类型 | 99.99 |
%a | 十六进制浮点类型 | FF.35AE |
%e | 指数类型 | 9.38E+05 |
%g | 通用浮点类型(f和e类型中较短的) | |
%h | 散列码 | |
%% | 百分比类型 | % |
%n | 换行符 | |
%tx | 日期与时间类型(x代表不同的日期与时间转换符 |
我们通过一个案例简单的演示一下,参考代码:

可以看出,java支持丰富的字符串输出格式。可能唯一不太好的地方就是转义字符太多,不方便记忆。
什么是字符串模板?
Kotlin的字符串输出函数是println和print,相比Java的System.out.println以及System.out.print代码量还是要少那么一点。
Kotlin针对字符串拼接和格式化输出,则是使用了字符串模板技术,针对格式简单的字符串输出,字符串模板显得更加方便。
字符串模板使用的4种方式
1) 在字符串中进行变量输出,语法格式${变量},参考代码:

2) 在字符串中进行变量输出,可以省去大括号,语法格式$变量,参考代码:

3) 在字符串中调用其他方法,语法格式${方法()},参考代码:

4) 在字符串中执行表达式, 语法格式${表达式},参考代码:
