println(“我是新增的show函数:name:
n
a
m
e
,
a
g
e
:
name, age:
name,age:age”)
}
// 增加扩展函数getInfo()
fun ObjectClass1.getInfo(){
println(“我是新增的getInfo函数:name:
n
a
m
e
,
a
g
e
:
name, age:
name,age:age”)
}
// 字符串 扩展
fun String.addExtAction(number: Int) = this + “@”.repeat(number)
data class ObjectClass1(val name: String, val age: Int)
3、可空类型函数扩展
“tiger”.outPutStringValue(“传null 就走这里”)
null.outPutStringValue(“传null 就走这里”)
// String 不可空的情况下,只能传值,在可空的情况下,可以传 null
// defaultValue 添加一个备用函数,在传值为 null 的情况下,返回 defaultValue 备用内容
fun String?.outPutStringValue(defaultValue: String){
println(this ?: defaultValue)
}
4、infix 关键字
infix 中缀表达式,可以简化代码。需要加 扩展函数才能使用哦
// 条件一:对第一个参数 O1.test() 函数扩展
// 条件二:需要在 括号(o2: o2)参数里面,传递一个参数
“tiger”.test(“18”)
“tiger” test (“18”)
123 test (“18”)
// map 自带的有中缀表达式哦
val mapOf = mapOf(“tiger” to 2)
println(mapOf)
infix fun
println(“中缀表达式第一个参数的内容是:$this”)
println(“中缀表达式第二个参数的内容是:$o2”)
}
5、变换函数 Map
// 原理:就是把 匿名函数 最后一行的返回值,加入到一个新的集合,新集合的泛型是R,并且返回集合
val listOf = listOf(“张三”, “王美丽”, “大漂亮”)
val map = listOf.map {
“[$it]”
}.map {
“你给啥,我都敢加 $it”
}
println(map)
6、变换函数 flatMap
// 原理:就是把 匿名函数 最后一行的返回值,加入到一个新的集合,新集合的泛型是R,并且返回集合
val listOf = listOf(“张三”, “王美丽”, “大漂亮”)
val map = listOf.map {
“[$it]” // 每次返回一个string
}.flatMap {
listOf(“
i
t
你给啥
=
我都敢加
"
,
"
it 你给啥=我都敢加","
it你给啥=我都敢加","it 表示不服”,“$it 觉得王美丽丑”) // 每次返回一个集合
}
println(map)
7、filter 过滤函数
// filter 函数使用非常的简单, 但是得是一个集合
val listOf1 = listOf(“张三”, “王美丽”, “大漂亮”)
val listOf2 = listOf(“张s”, “刘芳”, “王五”)
val ls2 = listOf(listOf1, listOf2)
val map = ls2.flatMap { it ->
it.filter {
it.contains(‘张’)
}
}
// 输出打印的是一个数组,元素只有 包含 contains(‘张’) 的
println(map)
8、合并操作符
// 原理:就是把一个集合 和 第二个集合 合并起来,创建新的集合, 并返回
// 创建新的集合(元素,元素,元素) 元素Pair(K, V) 代替第一个集合元素 V代替第二个集合的元素
val listOf1 = listOf(“张三”, “王美丽”, “大漂亮”)
val listOf2 = listOf(45, 18, 21)
val zip = listOf1.zip(listOf2)
println(zip)
// 遍历
zip.forEach {
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
总结:
各行各样都会淘汰一些能力差的,不仅仅是IT这个行业,所以,不要被程序猿是吃青春饭等等这类话题所吓倒,也不要觉得,找到一份工作,就享受安逸的生活,你在安逸的同时,别人正在奋力的向前跑,这样与别人的差距也就会越来越遥远,加油,希望,我们每一个人,成为更好的自己。
BAT大厂面试题、独家面试工具包, 资料包括 数据结构、Kotlin、计算机网络、Framework源码、数据结构与算法、小程序、NDK、Flutter,
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长! ramework源码、数据结构与算法、小程序、NDK、Flutter,
[外链图片转存中…(img-17YBVk0A-1712591544354)] [外链图片转存中…(img-eydER4kw-1712591544354)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长! [外链图片转存中…(img-IIGxOVB2-1712591544354)]
相关链接
发表评论