分类

Kotlin

专注于 Kotlin 编程语言的全面探索,深入解析其现代语法、特性与应用实践。从基础的变量、函数和类设计,到高级主题如协程(Coroutines)、DSL 构建、扩展函数和 Jetpack Compose 集成,提供详尽代码示例和优化技巧。适合初学者快速上手,以及资深开发者提升效率与代码优雅度。通过实际项目案例和常见问题调试,展现 Kotlin 在 Android、多平台开发中的核心优势。呈现更简

共 46 篇文章

Kotlin

区间 ..

区间 ..1、..区间是为任何可比较类型定义的。使用 .. 表示一个区间,格式如下:start .. end.. 表示的区间是包括首位的,还有一种表示区间的修饰符until,一般用在for循环遍历上,从0开始直到size(不含)。0 until size2、灵活使用区间的使用很灵活,用好可以极大简化代码。在for范围循环借助in关键字,还有!in关键字遍历。2.1、循环区间 .. 通常配合for循

1.8k
Kotlin

Kotlin object 关键字详解:对象表达式、对象声明与伴生对象

Kotlin object 关键字详解:对象表达式、对象声明与伴生对象在 Java 里,"匿名内部类""单例""静态成员"是三套各不相同的写法,琐碎且易错。Kotlin 用一个 object 关键字把它们统一了——根据出现位置和是否带名字,分别表达"匿名对象""单例""类级静态成员"三种语义。本文把这三种用法、它们的差异与陷阱一次讲透。参考文档:Kotlin 官方文档 · Object decla

209
泛型
Kotlin

泛型

泛型类型参数化,和Java一样,Kotlin也有泛型。省去类型强转的麻烦,也提供了类型安全方面的保障。1、泛型类定义带泛型参数的类。例:泛型类Type中的值就会根据实际传入的参数类型输出结果:注意:①如果已经将某个变量初始化为一种泛型,就不能再次赋值成其它类型的泛型了:②创建泛型类型的对象直接使用var关键字即可,Kotlin自动进行类型推断。如果一定要指定变量的类型,必须也要指定泛型的类型:正确

2.0k
Kotlin

Kotlin 数据类与密封类详解

Kotlin 数据类与密封类详解在 Java 里,写一个"纯数据"的类要手写一堆 getter/setter/equals/hashCode/toString,写一个"有限取值"的类型又得靠枚举或抽象类加 if-else。Kotlin 为这两类高频场景提供了专门语法:数据类(data class)专治"持有数据"的样板代码,密封类(sealed class)专治"受限分类"的穷尽匹配。本文把两者的

206
枚举
Kotlin

枚举

枚举1、枚举类Kotlin中也有枚举,而且是仅此唯一一个定义比Java“复杂”的结构。Java中定义一个枚举只需要enum关键字,Kotlin中需要enum class两个一起才行。1.1、定义枚举类定义类时用enum软关键字声明这个类是一个枚举类。为什么叫软关键字,因为Kotlin中enum只有和class在一起才有用,其它时候可以作为变量名使用。关键字是不可以作为变量名的,比如class,可以

1.8k
Kotlin

扩展

扩展Kotlin可以对现有的类进行扩展,添加原本没有定义在类中的成员。不仅可以对Kotlin代码进行扩展,只要能编译为Java类,都可以为这个类添加任意扩展。Kotlin巧妙的用了扩展的特性为Java标准类库扩展了很多API方法,方便直接调用。1、扩展函数1.1、定义扩展函数扩展函数的语法如下:fun extensionClass.functionName(params){ body } 例:Ba

1.8k
接口
Kotlin

接口

接口学习一下Kotlin中接口相关的语法,和Java 8差不多。可以包含抽象的方法定义,还可以拥有一些属性,以及非抽象的方法。1、interfaceKotlin中也是用interface定义接口:不需要open关键字修饰接口,实现一个接口如下,使用冒号:,而不是Java中的implement关键字。2、成员变量2.1、接口中定义属性接口中定义的成员变量:接口中的变量不允许初始化赋值。2.2、实现接

1.8k
Kotlin的继承
Kotlin

Kotlin的继承

Kotlin的继承1、超类:Any类似于Java中的Object类,Kotlin也有一个叫Any的超类,是所有类的父类,所有类都默认继承自该类。超类的定义如下,其中定义了三个函数:2、open注意上面的Any类用open修饰,表示该类可以被继承。Kotlin中的类默认都是final的,无法被继承:如果想让类可以被继承,就需要用在定义类的地方用open关键字标识该类可以被继承。3、构造器继承中涉及到

2.1k
类和对象
Kotlin

类和对象

类和对象1、类修饰符介绍类之前,先来讲一下类的修饰符。Java中的类和方法默认都是open的,而在Kotlin中默认都是final。1.1、类属性修饰符如下:定义一个类如下,有的属性能被子类重写,有的被修饰为final:abstract修饰的抽象类通常包含一些没有实现并且必须在子类重写的抽象成员。抽象的属性始终是open的,则无需再用open修饰。如果实现的子类还是open的,那么接口默认是ope

1.9k
Kotlin

标签:label

标签:label标签的格式为任何符号后面跟@:标签@1、循环标签将标签用在循环语句中,返回到标签后的语句继续执行。标签语法参考《Kotlin循环语句》。例:2、函数返回标签kotlin的函数可以嵌套,如果内层函数有return返回,那么通常是直接从最外层的函数返回。2.1、Lambda函数返回如果想只从内部的Lambda函数返回,可以加上标签:return@标签返回到标签处而不是整个函数的返回。还

1.9k
Kotlin

Kotlin循环语句

Kotlin循环语句每门语言都要学一下循环语句,虽然每种语言都有for、while等循环,但总有些各自的特色。1、for循环for循环遍历集合或者数组,使用 in 关键字遍历任何提供迭代器。语法:例:先定义一个数组或集合array:遍历集合array:通常还需要用到索引index,调用集合的withIndex()方法参与循环遍历。例:使用下面的方式遍历for循环,同时获取元素当前索引index和当

2.1k
Kotlin

条件语句:if和when

条件语句:if和whenkotlin有两种条件语句一种是熟知的if条件语句,另一种是新颖的when条件语句。开发过程中更推荐使用when替代层层if判断,代码会更简洁。1、ifif条件参数类型为布尔类型,只有true和false两种。if...else...常见的可以简写成:可以多重嵌套if...else if...else...语句条件判断除了简单的直接用Boolean条件,还能使用关键字 in

1.7k
Kotlin基本类型
Kotlin

Kotlin基本类型

Kotlin基本类型Kotlin没有基础数据类型,但是封装了6种数值类型,分别是Double、Float、Long、Int、Short、Byte。此外还有字符类型Char。1、NumberKotlin中定义的6中数值类型都继承自Number父类。父类定义如下,定义了7中方法,也就是Kotlin中所有的数值类型都可以调用上面的方法转换。2、常量在《Kotlin基本语法》中介绍了变量,现在了解一下什么

1.9k
字符串模板
Kotlin

字符串模板

字符串模板类似于Java中的String字符串fromat格式化,kotlin也有字符串格式化,但是kotlin还有一套字符串模板替换。用关键字$表示一个变量名或者变量值。1、变量值引用$varName定义一个变量key再定义另一个字符串,加入$关键字str的值就是:keyword is hello2、变量方法调用${varName.fun()}接着上面的例子,调用变量的方法,并替换成字符串内容。

1.7k
 Kotlin基本语法
Kotlin

Kotlin基本语法

Kotlin基本语法了解Kotlin语言的基本语法。1、包kotlin文件以.kt结尾,编译文件还是如此只不过在文件名后面加上Kt后缀。这一点和Java不同,Java源文件.java,编译后为.class文件。1.1、包定义每个kotlin文件的第一行就用关键字package定义该文件所在的包。例:1.2、导包用到其它kotlin文件需要使用关键字import导入,这一点和Java一样。kotli

2.1k