kotlin 基本语法

复制代码
const val INFO =  "ZZZ is Success Result"

fun main(){

复制代码
var name: String? = "zzz"
name = null
name?.capitalize() //?问号的意思是如果name是null ,后面的方法不执行,如果name不是null,后面方法执行

var name: String? = "zzz"

name = null

// let 的安全调用

name?.let { //这里的 it 指 name 本身,所以是 String 类型

//isBlank() 是一个字符串扩展函数,用于检查字符串是否为空或仅包含空格字符。如果字符串为空或仅包含空格字符,则该函数返回 true,否则返回 false。

if(it.isBlank()) {//如果name 是控制""没有内容

"default"

} else {

"$it"

}

}

name?.capitalize() //?问号的意思是如果name是null ,后面的方法不执行,如果name不是null,后面方法执行

println("name的长度${name?.length}")

//字符串截取

val indexOf = INFO.indexOf('i') // 截取0到i之前的

方法1 println(INFO.substring(0,indexOf))

方法2 println(INFO.substring(0 until indexOf))

方法1和方法2一个意思

//字符串分割

val jsonTest = "zzz1,zzz2,zzz3,zzz4,zzz5"

val list:List<String> = jsonTest.split(",")

println("分割后的list里面的元素有:${list}")

list.forEach{

println("分割后的list里面的元素有${it}")

}

}

相关推荐
xiaoshuaishuai87 分钟前
C# 委托与事件
开发语言·c#
摇滚侠8 分钟前
Mybatis 入门到项目实战 搭建 MyBatis 框架 01-14
java·tomcat·mybatis
kmblack18 分钟前
javascript计算年龄
开发语言·javascript·ecmascript
Dick50717 分钟前
ROS2 多机器人通用 Driver 层复盘:BaseRobotDriver 到多平台 Mock 切换实现
前端·javascript·机器人
肖爱Kun39 分钟前
STL标准模块库操作
开发语言·音视频
码不停蹄的玄黓41 分钟前
SpringBoot 全局异常处理器实现
java·spring boot·后端
Song_da_da_42 分钟前
C# 接口(Interface)深度解析:规范、解耦与灵活扩展
开发语言·c#
政沅同学1 小时前
基于 C# WPF + HALCON 的工业视觉算法工具框架(开源)
开发语言·c#·wpf
影寂ldy1 小时前
C#WinForm 窗体基础(入口、部分类、属性、生命周期事件)
开发语言·c#