
Android
文章平均质量分 94
梓仁沐白
一介筑基期散修,全属性杂灵根。努力修仙ing
展开
-
【Kotlin】注解&反射&扩展
也就是说 b.also { b = a } 会先将 a 的值 (1) 赋值给 b,此时 b 的值为 1,然后将 b 原始的值(2)赋值给 a,此时 a 的值为 2,实现交换两个变量的目的。在上面的例子中看似 T.run 会更好,因为 this 可以省略,调用更加的简洁,但是 T.let 允许我们自定义参数名字,使可读性更强,如果倾向可读性可以选择 T.let。在我们的预期中,我们希望调用的是扩展函数foo(),但是输出的结果为: son called member foo。+号对应的函数名是plus。原创 2025-06-06 11:19:09 · 1067 阅读 · 0 评论 -
【Kotlin】协程
因为串行的执行中,执行是阻塞式的,主线程的阻塞会导致很严重的问题,所以所有的耗时操作不能在主线程中执行,所以就需要多线程并行来执行。在并行的执行中,异步回调其实就是代码的多线程顺序执行。一个进程可以跑很多个线程处理并发,但是线程进行切换的时候,操作系统会产生中断,线程会切换到相应的内核态,并进行上下文的保存,这个过程不受上层控制,是操作系统进行管理。其次,协程不需要多线程的锁机制,因为协程只有一个线程,也不存在同时写变量冲突,在协程中控制共享资源不需要加锁,只需要判断状态即可,因此执行效率比多线程高很多。原创 2025-06-06 11:17:28 · 788 阅读 · 0 评论 -
【Kotlin】高阶函数&Lambda&内联函数
在某些情况下,不带参数的函数可与只读属性互换。 虽然语义相似,但是在某种程度上有一些风格上的约定。底层算法优先使用属性而不是函数:高阶函数(Higher Order Function)是一种特殊的函数,它接收函数作为参数,或者返回一个函数。函数的基本格式如下:高阶函数的一个很好的例子就是lock函数,它的参数是一个Lock类型对象和一个函数。该函数执行时获取锁,运行函数参数,运行结束后再释放锁。在这个例子中,body为函数的类型对象,该函数是一个无参函数,而且返回值类型是T。调用lock函数时,可以传原创 2025-06-03 23:34:20 · 858 阅读 · 0 评论 -
【Kotlin】表达式&关键字
不再需要switch的break(这真是一个恼人的关键字),由上往下匹配,一直匹配完为止,否则执行else分支的逻辑,类似switch的default。到这里你可能会说上面的例子中,这样嵌套子when表达式,层次依旧比较深。是一个表达式,即它会返回一个值,每个条件分支都隐式地返回其最后一行的表达式的结果,因此无需使用return关键字。一个完整的when表达式类似switch语句,由when关键字开始,用花括号包含多个逻辑分支,每个分支由-> 连接,不同之处是参数可以是任何类型,并且分支也可以是一个条件。原创 2025-06-03 23:38:07 · 1184 阅读 · 0 评论 -
【Kotlin】数字&字符串&数组&集合
Kotlin中的基本数据类型包括数字、字符串、数组和集合。数字类型与Java类似但不完全相同,不支持隐式转换,需显式调用toXXX()方法。字符串分为转义和原生两种,支持模板表达式,判等分为结构相等(==)和引用相等(===)。数组可视为一组变量集合。修饰符方面,Kotlin默认public,其他修饰符(private/protected/internal)的可见性与Java有所不同,internal限定在模块内可见。这些基本类型在Kotlin中都是对象,可以调用成员函数和属性。原创 2025-05-31 23:45:22 · 1193 阅读 · 0 评论 -
【Kotlin】简介&变量&类&接口
Kotlin简介与基础语法 Kotlin是JetBrains开发的一种基于JVM的现代编程语言,2017年被Google宣布为Android官方开发语言。Kotlin具有以下特点: 简洁性:相比Java代码量更少,如数据类只需一行定义 兼容性:完全兼容Java,可与现有Java代码互操作 安全性:提供空指针安全检测等机制 功能性:支持Lambda、扩展函数等现代特性 基础语法包括: 变量声明:var(可变)和val(不可变) 类型推断:无需显式声明类型 空安全:通过?标识可空变量 类定义:简化了Java冗长原创 2025-05-31 23:40:31 · 1242 阅读 · 0 评论 -
Android数据存储技术
Android提供了多种方式来让用户保存持久化应用程序数据。根据自己的需求来做选择,比如数据是否是应用程序私有的,是否能被其他程序访问,需要多少数据存储空间等,分别是:① 使用SharedPreferences存储数据② 文件存储数据③ SQLite数据库存储数据④ 使用ContentProvider存储数据⑤ 网络存储数据Android提供了一种方式来暴露你的数据(甚至是私有数据)给其他应用程序 - ContentProvider。它是一个可选组件,可公开读写你应用程序数据。原创 2025-05-16 17:00:48 · 1033 阅读 · 0 评论 -
Android 中SQLite的使用
Android 也提供了几种方法用来保存数据,使得这些数据即使在程序结束以后依然不会丢失。:可以保存在应用程序自己的目录下,安装的每个app都会在/data/data/目录下创建个文件夹,名字和应用程序中AndroidManifest.xml文件中的package一样。:这也是一种经常使用的数据存储方法,因为它们对于用户而言是透明的,并且从应用安装的时候就存在了。原创 2025-05-15 09:21:09 · 675 阅读 · 0 评论 -
Kotlin 知识点汇总
Java 的写法Kotlin 的写法(Unit 跟 void 一样效果)// 在 Kotlin 可以省略 Unit 这种返回值通过以上几种函数的介绍,可以很方便优化kotlin中代码编写,整体看起来几个函数的作用很相似,但是各自又存在着不同。使用的场景有相同的地方比如run函数就是let和with的结合体。原创 2025-05-14 15:57:25 · 1205 阅读 · 0 评论 -
Android清单文件
最典型用途:指定 App 的主入口 Activity。告诉系统哪些Intent可以触发当前activity。这个 Android 项目中的全部 Activity 都必须在清单文件中用声明。从 Android 6.0(API 23)开始,除了在。用于指定组件能响应该怎样的 Intent。,系统在安装和运行应用时,首先会读取它。(比如摄像头、位置、存储读写)。它包含整个应用的组件和元数据。系统会在安装时提示用户。里声明权限外,还必须。下面是一些常用的权限。原创 2025-05-14 15:55:40 · 1060 阅读 · 0 评论 -
Android权限机制
Android 使用权限机制来保护用户隐私和设备安全。每个应用运行时都是被隔离的,无法直接访问系统资源或其他应用的数据,除非获得明确授权。权限机制是 Android 的一种“沙箱”设计体现。原创 2025-05-14 15:52:54 · 703 阅读 · 0 评论 -
Gradle构建工具
(包装器),保证所有开发者使用相同版本的 Gradle。Gradle 是一个现代化的构建工具,广泛应用于。等项目的构建、依赖管理和自动化任务。的优点,提供了高性能、灵活的构建能力。,多个模块可以共享代码和依赖。Gradle 提供了。原创 2025-03-13 16:55:58 · 1088 阅读 · 0 评论 -
kotlin基础知识点汇总
Java 的写法Kotlin 的写法(Unit 跟 void 一样效果)// 在 Kotlin 可以省略 Unit 这种返回值通过以上几种函数的介绍,可以很方便优化kotlin中代码编写,整体看起来几个函数的作用很相似,但是各自又存在着不同。使用的场景有相同的地方比如run函数就是let和with的结合体。原创 2025-03-13 16:40:39 · 1114 阅读 · 0 评论