协程是什么?首先kotlin协程是kotlin的扩展库(kotlinx.coroutines)。上一篇我们简单了解了线程的概念,线程在Android开发中一般用来做一些复杂耗时的操作,避免耗时操作阻塞主线程而出现ANR的情况,例如IO操作就需要在新的线程中去完成。但是呢,如果一个页面中使用的线程太多,线程间的切换是很消耗内存资源的,我们都知道线程是由系统去控制调度的,所以线程使用起来比较难于控制。
转载
2023-12-18 10:59:27
79阅读
在使用 IntelliJ IDEA 开发时,很多开发者在 Kotlin 与 Java 之间切换时遇到了一些具体的问题,尤其是在项目构建和配置上。这篇文章将为大家清楚地记录下如何解决“idea 切换 Kotlin 为 Java”的问题,包含相关背景、参数解析、调试步骤、性能调优、排错指南以及最佳实践。
## 背景定位
当你在一个使用 Kotlin 语言的项目中工作时,可能会因为某些需求而需要临时
编码规范无冲突的地方默认使用Java的编码风格使用驼峰法命名(并避免命名含有下划线)类型名以大写字母开头方法和属性以小写字母开头使用 4 个空格缩进公有函数应撰写函数文档,这样这些文档才会出现在 Kotlin Doc 中冒号类型和超类型之间的冒号前要有一个空格,而实例和类型之间的冒号前不要有空格:interface Foo<out T : Any> : Bar {
fun fo
转载
2023-12-09 18:24:47
59阅读
1 介绍本规范参考Android官方Kotlin编码规范。2 源文件规范2.1 文件编码所有源文件必须使用UTF-8进行编码2.2 文件命名所有源文件必须使用.kt作为扩展名如一个源码文件仅包含一个顶级类,则该文件应当以这个定级类的类名作为文件名,如包含多个顶级定义,请选择一个能够描述该文件内容的名字作为文件名。原则上只能包含一个顶级类。2.3 特殊字符2.3.1 空格、换行Tab不可以用于缩进2
转载
2023-12-20 09:32:21
54阅读
目录1.Kotlin语言的过滤函数-filter2.Kotlin语言的合并函数-zip3.Kotlin语言的函数式编程4.Kotlin语言的互操作性与可空性5.单例模式6.注解@Jvmname与Kotlin7.注解@JvmField与Kotlin8.注解@JvmOverloads与Kotlin9.注解@JvmStatic与Kotlin10.手写RxJava,全部用KT的基础来写1.Kotlin语言
转载
2024-04-21 17:32:02
65阅读
Kotlin学习2.1:Kotlin的基本语法Kotlin代码的基本语法命名格式包名类和接口方法字段(Fields)变量和参数其他Kotlin中的注释单行注释和多行注释文档注释 Kotlin代码的基本语法命名格式总体来说,Kotlin命名格式要和Java命名规范保持一致,因为Kotlin也是JVM兼容的语言。包名包的命名规则和Java一样:全小写,当遇到多个词连接的场景,不要使用下划线(_)和连
转载
2023-12-20 23:49:59
51阅读
在上一次对Kotlin进行了一个入门的介绍,并用IntelliJ IDEA来编写了一个Kotlin的HelloWorld,记得我们在最初学习J2SE的时候在编译运行都是通过javac、java命令来进行的,脱离开了IDE,这样从学习角度来说会更加的扎实,所以咱们也来通过手动编译运行的方式来学习Kotlin,也就是通过终端命令行的方式,如官网所示: 要想使用它,则需要下载相关的工具包,下
转载
2024-02-11 08:17:44
88阅读
Java与Kotlin代码的转换Java代码转Kotlin Java代码转Kotlin利用AndroidStudio进行代码转化。不足点:只能按照基本的语法进行转换,不会自动应用Kotlin各种特性,这些特性还是需要手动去完成。转化一段java代码:直接复制一段Java代码,然后复制到Kotlin文件进行粘贴,AndroidStudio会进行提示,是否需要转为Kotlin代码。转换Java文件:
转载
2023-06-02 15:38:50
1358阅读
项目project的build.gradleclasspath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.4-2"Module的build.gradleapply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'如图:然后下载插件。。。 等处于停止编译状态 c
转载
2023-06-27 14:17:03
171阅读
前言各个团队多少都有一些自己的代码规范,但制定代码规范简单,困难的是如何落地。如果完全依赖人力Code Review难免有所遗漏。这个时候就需要通过静态代码检查工具在每次提交代码时自动检查,本文主要介绍如何使用DeteKt落地Kotlin代码规范,主要包括以下内容为什么使用DeteKt?
IDE接入DeteKt插件
CLI命令行方式接入DeteKt
Gradle方式接入DeteKt
自定义Det
转载
2024-01-19 23:05:05
123阅读
android日夜间模式切换相比大家都接触过,我之前也经常用,但今天想给大家推荐一个google推荐的实现方式,实现起来比较简单,就是咱们今天的主角主题-----Theme.AppCompat.DayNight。Theme.AppCompat.DayNight在Support Library 23以后也就是6.0出现,支持API 14及以上,我相信现在已经不存在低于API14的手机了吧。这个主题可
转载
2024-08-14 14:15:44
110阅读
任何UI框架都有自己的主线程来进行渲染界面和观察触摸事件,这个线程绝对是你应该关注的最重要的线程,用户永远不知道你是否使用了AsyncTask或者Coroutine来编写你的代码,但是用户却可以感受到你的应用的响应速度,因此要如何组织应用所要执行的任务是你要最应该了解的事情之一HelloWorld如果你有一个网络请求,耗时很久,那么它必须不能在主线程执行。如果你在Android应用里这样做,将会导
1. 数值类型kotlin提供了如下的内置数据类型数据类型 占用字节数Double8Float4Long8Int4Short2Byte1使用kotlin内置数据类型定义的一些变量和常亮示例:var m : Int = 20
var price : Double = 10.6
var flag : Boolean = true
val v1 : Int
转载
2024-02-04 07:30:19
77阅读
空类型转换fun getName(): String?{
return null
}
fun main(args: Array<String>) {
val name = getName()
//为什么报错,因为kotlin不支持空类型
println(name.length)
//?就是我知道他是空类型,然后我让他执行这个空类型,这就是类型安
1. Kotlin 中的 Lambda 表达式如果你已经开始使用 Koltin, 或者对它有过一些了解的话,那么一定对这种写法并不陌生了:// 代码一:Kotlin 代码
view.setOnClickListener{
println("click")
}它跟下面这段 Java 代码是等价的:// 代码二:java 代码
view.setOnClickListener(new View.
转载
2024-08-12 10:59:31
38阅读
本节将介绍 Kotlin 和 Java 互调过程中封装类、空值敏感以及静态变量和静态方法的处理Kotlin 没有封装类首先看看以下代码。我们用 Java 创建一个接口,如下:之后我们创建一个 A.java 实现这个接口,并在每个方法中打印对应的类型,int 和 Integer。最后,我们在 Kotlin 代码中调用它,我们来看下它的执行结果:你会发现只调用了 int 参数的方法,通过这个示例可以看
转载
2024-02-13 19:32:31
99阅读
目录一:基础语法1.1 特性1.2 变量1.2.1 可变变量的定义: var 关键字1.2.2不可变变量的定义: val 关键字1.2.3 常量1.2.4 字符串模板1.3 类与属性1.3.1 基础1.3.2 自定义访问器1.3.3 备用字段1.3.4 延迟初始化属性和变量1.4 函数1.4.1 函数基本方法1.4.2 主次构造函数1.4.3 函数省略返回类型1.4.4 函数调用1.5 控制流:
转载
2023-09-29 20:56:47
142阅读
1.inline的作用1.1 可以将函数体直接复制到函数调用处package com.example.kotlinsyntax._inline
class InlineClass {
//inline标记的函数
inline fun doInline() {
print("inline")
}
//普通函数
fun doNoInline() {
转载
2023-09-27 07:12:56
172阅读
Kotlin 简介:Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。 Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。 JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。Kotlin已正式成为Android官方开发语言。通
转载
2023-07-12 11:58:15
62阅读
由于项目中混合了kotlin和java两种语言,所以有时间两种语言交互之间就有些尴尬,由于不太熟练,所以就记录一下。1. Kotlin调用Java1.1 kotlin调用Java集合类:val kotlinList = listOf(1,2,4,5)
//这里使用的是Java原生的ArrayList
val javaList = ArrayList<Double>()
转载
2023-08-18 15:12:16
314阅读