当前位置:网站首页>Kotlin—基本语法(三)
Kotlin—基本语法(三)
2022-07-31 09:09:00 【光临天下】
这章比较简单是对字符串的讲解,以及正则表达式。很多语言都有正则,如果你之前没有搞明白,就耐下心来读读。
一、字符串
在Kotlin中字符大概分为两种,一种和Java一样的普通字符串,一种Kotlin才有的原始字符串。
1.普通字符串
与Java语言一样,普通字符串使用 " " 把内容包括起来。
var string="我是字符串"2.原始字符串
输入的字符串=输出的字符串,它忽略转义。使用方式就是 """ """ ,对比一下,你就明白了。除字符串模板
var string1 = "我是\n字符串"
var string2 = """"我是\n字符串"""
println(string1)
println(string2)打印结果

3.字符串的转换
把各种类型转换为String类型的是经常要做,Kotlion怎么做呢?
val char = charArrayOf('1', '2', '3', '4') //创建数组
val s2 = String(char) //转换为String类型
val s3 = String(char, 1, 2) //截取char数组,转换为字符串
别的类型也是相同的做法,查看String的构造函数(构造方法)
4.字符串模板
为了满足对字符串的方便处理,Kotlin引用了字符串模板。
我现在要这样打印一行话,如下为Java的打印方法
int a = 18;
String s1 = " 我今年" + a + "岁";
System.out.println(s1);输出结果为: 我今年18岁。
Kotlin使用字符串模板打印方法
val int = 18
val string = "我今年${int}岁" //使用字符串模板
val age = "这是$int" //有情况可以省略 {}
println(string)
println(age)打印结果:

但是注意在原始字符串的使用情况下:
val int = 18
val string = """"我今年${int}岁""" //使用字符串模板
val age = """这是$int"""" //有情况可以省略 {}
println(string)
println(age)字符模板一样生效。
5.字符串API的简单运用
本文就不详细将解对字符串的API使用,只是举个例子。
对于学习过一门开发语言的,了解一下,开发的时候在看API就行。初学者,可以练习一下。
Kotlin中==就是是Java中的equals方法,===才是Java中的==。
val string = "Kotlin.kt"
val kt = ".kt"
val Kotlin = "Kotlin"
val ss = "SS"
val ss1 = "ss"
val ss2 = "SS"
val s1 = string.endsWith(kt) //true,是否结尾为.kt
val s2 = string.startsWith(Kotlin) //true,是否以Kotlin为开头
val b = ss == ss2 //true, 判断ss是否等于ss1,判断的为字符串,不是地址
val c = ss == ss1 //flas,使用 == 判断是会区分大小写
val e = ss == ss2 //true
val f = ss.equals(ss1, true) //true,equals方法,忽略大小写
val g = ss.equals(ss1) //false,equals方法,默认不忽略大小写6.正则表达式
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本 ------来自百度百科
正则表达式用于对字符串的操作哦!
这里我就不多对正则表达式,过多的讲解,期待对正则表达式的文章吧!
6.1 正则表达式不同环境的区别

Kotlin和Java式一样的,不用担心。
如果你不会我推荐两个个网址。
第一个:第三方的正则表达式,开发中大多数,只需要别人写好的表达式。
今天开年第一天,就少写点,而且我的耳机坏了,不开心。
边栏推荐
猜你喜欢

35-Jenkins-Shared library application
Hematemesis summarizes thirteen experiences to help you create more suitable MySQL indexes

Flutter Paystack implements all options
![[MySQL exercises] Chapter 5 · SQL single table query](/img/11/66b4908ed8f253d599942f35bde96a.png)
[MySQL exercises] Chapter 5 · SQL single table query

0730~Mysql optimization

Binary tree search and backtracking problem (leetcode)

MySQL (2)
![[Cloud native] Introduction and use of Feign of microservices](/img/39/05cf7673155954c90e75a8a2eecd96.jpg)
[Cloud native] Introduction and use of Feign of microservices

MySQL----多表查询

postgresql 范围查询比索引查询快吗?
随机推荐
关于挂载EXfat文件格式U盘失败的问题
Flink1.15源码阅读——PER_JOB vs APPLICATION执行流程
一次Spark SQL线上问题排查和定位
canvas粒子变幻各种形状js特效
来n遍剑指--09. 用两个栈实现队列
刷题《剑指Offer》day05
JSP exception对象简介说明
PyQt5快速开发与实战 9.4 Matplotlib在PyQt中的应用
搭建frp进行内网穿透
(C语言基础)原样输入输出
【MySQL功法】第4话 · 和kiko一起探索MySQL中的运算符
【软考软件评测师】2012综合知识历年真题
【Redis高手修炼之路】Jedis——Jedis的基本使用
各位大佬,sqlserver 支持表名正则匹配吗
postgresql 生成随机日期,随机时间
51单片机-----外部中断
@RequestBody和@RequestParam区别
【Unity】编辑器扩展-02-拓展Hierarchy视图
js部门预算和支出雷达图
ARC在编译和运行做了什么?