集合的创建与遍历Kotlin没有采用它自己的集合类,而是采用标准的Java集合类。大部分Kotlin的标准库是由Java类的拓展函数组成的。创建集合Kotlin中对集合增加了一个新的接口MutableList,实现该接口的集合是可变集合。Kotlin中,集合分为可变集合和不可变集合。public interface MutableList<E> : List<E>, Mut
转载
2024-09-26 10:05:26
83阅读
什么是扩展函数扩展函数数是指在一个类上增加一种新的行为,我们甚至没有这个类代码的访问权限;Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式;扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。扩展函数扩展函数可以在已有类中添加新的方法,不会对原类做修改;//扩展函数定义形式:
fun receiverType.functionName(pa
转载
2023-11-09 21:27:52
86阅读
Kotlin 扩展Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。扩展函数扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式fun receiverType.functionName(params){
body
}receiverType:表示函数的接收者,也就是函数
转载
2023-11-15 10:26:17
57阅读
学而不思则罔,思而不学则殆 【Kotlin】Kotlin学习七-扩展扩展扩展函数扩展是静态解析的可空接收者扩展属性伴生对象的扩展扩展的作用域扩展声明为成员关于可见性的说明 扩展Kotlin 能够扩展一个类的新功能而无需继承该类或者使用像装饰者这样的设计模式。 这通过叫做 扩展 的特殊声明完成。 例如,你可以为一个你不能修改的、来自第三方库中的类编写一个新的函数。 这个新增的函数就像那个原始类本来就
转载
2023-09-23 01:52:28
73阅读
Kotlin 扩展Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。扩展函数扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式:fun receiverType.functionName(params){
body
}receiverType:表示函数的接收者,也就是函
转载
2023-07-15 21:43:34
104阅读
一、定义Kotlin 在不修改类 / 不继承类的情况下,向一个类添加新函数或者新属性,更符合开闭原则。 扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。扩展属性:定义在类或者kotlin文件中,不允许定义在函数中;扩展函数:扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式:fun receiverType.functionName(params){
body
转载
2023-09-21 23:54:00
246阅读
Kotlin可以在不继承一个类的前提下去扩展一个类的新功能,支持扩展函数和扩展属性。扩展函数一般应用于第三方的sdk,或者是你没有办法控制的一些类,可以对这个类添加一些成员变量或者成员方法。扩展函数声明一个扩展函数,需要用一个接受这类型也就是被扩展的属性来作为他的前缀。下面代码为File添加一个readText的扩展函数fun File.readText(charset: Charset = Ch
转载
2023-07-19 00:02:45
115阅读
文章目录Kotlin 扩展函数 & 扩展属性概述顶层扩展扩展函数扩展属性类内扩展扩展的局限性优先级问题优化封装SP Kotlin 扩展函数 & 扩展属性概述Kotlin的扩展指给类增加新的功能。从语法角度可分为两种:扩展函数、扩展属性。从作用域角度可分为:顶层扩展和类内扩张。在 Kotlin 中,几乎所有的类都可以被扩展,包括普通类、单例类、密封类、枚举类、伴生对象,甚至还包括第
转载
2023-11-01 23:11:59
71阅读
一、扩展函数定义扩展函数 扩展可以在不直接修改类定义的情况下增加类功能,扩展可以用于自定义类,也可以用于比如List,String,以及Kotlin标准库里的其他类。和继承相似,扩展也能共享类行为,在你无法接触某个类定义,或者某个类没有使用open修饰符,导致你无法继承它时,扩展就是增加类功能的最好选择。1、定义扩展函数和超类上定义扩展函数/**
* 定义扩展函数
* 扩展可以在不直接修改类定
转载
2024-06-17 15:59:42
52阅读
高阶函数首先理解一下函数类型这个东西,在kotlin中,函数和Int、String等一样,也是一种类型,也有相应的对象,意味着可以声明变量类型或者作为方法的参数/返回类型。函数类型和扩展函数不一样!扩展函数相当于只是在原有的类中新增了一个方法,但它并不是一种类型。函数类型的格式(就是把一个普通函数的参数、返回类型提取了出来):// (基本类型, 基本类型,....) -> 基本类型
// 例
转载
2023-12-06 19:00:37
48阅读
1. 扩展属性kotlin允许动态为类扩展属性,扩展属性是通过添加get、set方法实现,没有幕后字段(filed)。 扩展属性也没有真的为该类添加了属性,只能说是为该类通过get、set方法计算出属性。 限制:①扩展属性不能有初始值; ②扩展属性不能用filed关键字访问幕后字段; ③val必须提供get方法,var必须提供get和set方法。var类型
class ExtensionTes
转载
2023-11-02 19:34:37
105阅读
Kotlin 扩展函数和扩展属性Kotlin 的扩展函数是定义在类外面的成员函数。扩展函数假如现有的类缺少一个你想要的方法,但是又无法改变它的内部结构,可以使用扩展函数给它添加一个方法,这一点类似 Java 一些工具类的静态方法。下面为 String 类添加一个 lastChar 扩展方法,用来查找最后一个字符。package string
fun String.lastChar() = get
转载
2023-11-02 19:06:27
78阅读
一、扩展函数和扩展属性 1.1、扩展函数 扩展函数用于为一个类增加一种新的行为,这是为缺少有用函数的类进行扩展的途径。扩展函数的用途就类似于在 Java 中实现的静态工具方法。而在 Kotlin 中使用扩展函数的一个优势就是我们不需要在调用方法的时候把整个对象当作参数传入,扩展函数表现得就像是属于这个类本身的一样,可以使用 this 关键字并直接调用其所有 public 方法 扩展函数并
转载
2024-01-07 22:00:13
0阅读
之间使用了kotlin的标准函数、匿名函数,觉得它十分灵活,简便。其实kotlin的标准函数就是用了扩展一、扩展函数1.定义扩展函数当我们需要对一个类新增一个方法时,在Java中需要写一个子类继承它,然后添加我们的新方法。 在kotlin中,可以利用扩展增加类的功能,指定类名后就可以新增函数 我们给所有类新增打印函数,给String新增加上!的方法://给所有类新增打印函数 :Any.函数名()
转载
2023-12-14 08:50:43
66阅读
/**
* 扩展函数
*/
data class User(var name:String){
override fun toString(): String {
return "User(name='$name')"
}
}
fun User.print(){
println("${name}")
}
fun main(arg:Array&
原创
2023-04-08 06:11:09
88阅读
Kotlin扩展知识(一):延迟初始化和密封类扩展函数:扩展函数表示即使在不修改某个类的源码的情况下,仍然可以打开这个类,向该类添加新的函数。当我们想要实现一个 统计某个字符串中的字母数量 的方法时,之前通常需要创建一个单例类,来实现一个函数,函数参数为字符串,进行统计,如下:object StringUtil {
fun lettersCount(str: String): Int {
转载
2023-11-29 16:07:36
83阅读
数学常数e的含义作者: 阮一峰日期: <:abbr class="published" title="2011-07-09T12:15:54+08:00">2011年7月 9日1.e是一个重要的常数,但是我一直不知道,它的真正含义是什么。它不像π。大家都知道,π代表了圆的周长与直径之比3.14159,可是如果我问你,e代表了什么。你能回答吗?维基百科说:"e是自然对数的底数。"但是,你
转载
2023-09-15 14:03:13
64阅读
扩展函数可以称为Kotlin的核心,标准库里到处充斥着扩展函数和高阶函数。然而标准库中扩展函数看起来都是高深莫测,一脸懵逼。本文教你如何理解扩展函数。什么是扩展函数?Kotlin同C#类似,能够扩展一个类的新功能而无需继承该类。通俗点讲就是使用扩展函数,可以为无法修改源代码的对象添加新的方法,或者强制让对象支持某些方法,添加之后这些方法看起来就是对象本来就有的功能。而在Java中我们通常使用写Ut
您有过想给某个类的 API 添加新的功能或属性吗?通常您可以通过继承该类,或者创建一个新的函数,该函数接收该类的实例作为参数,从而解决这个问题。Java 编程语言通常使用 Utils 类来解决此类问题,但这样的方式并不支持代码自动补全,会让写出的代码比较难以查找,使用起来也不直观。虽然这两种方式都可以解决问题,但终究还是很难写出简洁易读的代码。值得庆幸的是,Kotlin 带着扩展函数和属性来 "拯
转载
2024-09-04 23:33:32
38阅读
Java与Kotlin的互操作性已广泛应用于现代应用开发中,尤其是在Android领域。Kotlin的扩展函数为Java开发者提供了极大的灵活性,允许他们以更优雅的方式扩展类的功能。本文将详细记录如何在Java中使用Kotlin扩展函数的全过程,涵盖环境准备、集成步骤、配置详解、实战应用、排错指南和生态扩展等方面。
## 环境准备
在开始之前,确保你的开发环境支持Kotlin和Java的相互兼