首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

开源 | 从 SQLlin 的更新看 Kotlin Multiplatform 技术更迭

但在这之前的版本,即 1.2.1 发布于 2022年 8 月,基于 Kotlin 1.6.20,一年以上没有更新。对于 2023 年的项目来说,1.6.20 过于老旧。老旧的版本导致了如下一些问题。...1.1 Targets 更新维护不及时 Kotlin 在 1.8.20 版本废弃了一众 32 位 Kotlin/Native targets(目标平台),包括:iosArm32、watchosX86、wasm32...目前在 Github 上拥有 190 个 stars(2024.01.18),从 starts 数量上来看也许并不高,但Kotlin Multiplatform 开发者群体绝对数量目前仍然较低,与 Android...从 2022.11 ~ 2024.1,近一年的时间 Kotlin Multiplatform 技术迎来许多重要的变革。...这其中包括 new MM 从实验性阶段转入稳定,也包括 Kotlin/Native 编译器支持的 targets 的更迭,其他的小更新及优化更是数不胜数。

26110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    转向Kotlin——基础知识

    3、布尔类型 Kotlin中布尔类型用Boolean 描述,该类型有两个值:true和false。Boolean类型有3中操作:逻辑或(||),逻辑与(&&)和逻辑非(!)。...当然,在Kotlin中,if和when不仅可以作为语句使用,还可以当作表达式使用。...语句 Kotlin中,使用when替换了switch语句,标准使用如下: when (a) { 1 -> { println(1) } 2 -> {...,找到后执行分支语句; 如果分支中多余一条语句,要使用花括号{}; 满足条件的分支执行后,会自动终止when语句执行,因此,并不用像switch语句中那样每一个case语句都加一个break。...当然,when语句也可以作为表达式来使用,第一个满足条件的最后一条语句作为when语句的返回值: var m=when (a) { 1 -> { println(1) }

    1.1K10

    Kotlin学习之路(3)控制语句

    任何编程语言都会有自己的条件控制语句,这样才能使其逻辑更加的完整。Kotlin的控制语句与Java类似但也有些不同,本节将对条件 循环 以及运算符号表达式进行详细的介绍。...【运算符与表达式】 (1)一些常用运算符 Java支持的运算符(算术运算符 赋值运算符拓展后的赋值运算符 逻辑运算符)在Kotlin中这些运算符也全部支持。...(2)多分支 一提起多分支大家就会想起Java中的switch/case 语句,在Kotlin中switch/case 的机制还是存在的,只不过换了新的关键字when/else var...} } 从以上代码来看,when/else 与switch/case 有几点区别 首先是关键字switch被when替代 判断语句由原来的case:常量值变为现在的常量值 -> 每个分支后面没有...} count = count.inc() } (3)类型判断 Kotlin设定了when/else语句不仅可以判断变量值也可以判断变量的类型,如同Java的关键字

    67620

    从点滴基础探究Kotlin的独特魅力

    再次接触Kotlin,对Kotlin的新特性又有了一个更加深刻的认识: Kotlin可谓取众多语言之精华!这一次我从爱变成了痴迷....了解新特性,请查看《为什么从放弃到痴迷Kotlin》 : https://www.jianshu.com/p/9a419b60e2c5 而探究Kotlin独特魅力,要从细节入手,这篇博文从以下几个方面讲述...I/System.out: 2 说明: ① kotlin中,if语句是表达式,不是语句,类似于三元运算符. ② kotlin中,除了循环(for do 和 do while)以外大多数控制结构都是表达式...重构: 用"when" 代替 "if" kotlin没有三元运算符,因为if表达式有返回值.而当我们使用if的时候,可以使用表达式语法: 去掉return语句和花括号,使用if表达式作为函数体. 1.使用有返回值的...分支的形式,允许你检查 when 实参值的类型. ② 不过当逻辑过于复杂的时候,可以使用代码块作为分支体.

    2.7K30

    Kotlin系列一:基础知识快速入门

    条件语句 Kotlin中的when语句类似于Java中的switch语句,但比Java中的switch语句要灵活很多。...语句允许传入一个任意类型的参数,然后可以在when的结构体中定义一系列的条件,格式是: 匹配值 -> { 执行逻辑 } 当你的执行逻辑只有一行代码时,{ }可以省略。...when语句还有一种不带参数的用法,虽然这种用法可能不太常用,但有的时候却能发挥很强的扩展性。...可能你会觉得这种无参数的when语句写起来比较冗余,但有些场景必须使用这种写法才能实现。...举个例子,假设所有名字以Tom开头的人,他的分数都是86分,这种场景如果用带参数的when语句来写就无法实现,而使用不带参数的when语句就可以这样写: fun getScore(name: String

    82510

    干货 | Kotlin超棒的语言特性

    为了获得更加安全的代码,我们不得不加上很多if else 判断语句,来确保不会产生空指针异常。但Kotlin的?操作符可以非常简洁地实现上述逻辑: ? 那么这个?表达式的内在逻辑是什么呢?...同时,Kotlin还引入了字符串模板,可以在字符串中直接访问变量和使用表达式: ? 04 强大的when语句 Kotlin中没有switch操作符,而是使用when语句来替代。...同样的,when 将它的参数和所有的分支条件顺序比较,直到某个分支满足条件。如果其他分支都不满足条件将会进入 else 分支。 ? 但功能上when语句要强大得多。...这个表达式用switch语句基本无法实现,只能用if else 链来实现。 ? 说起if else 链,我们可以直接用when语句把它给替换掉: ?...上述代码可以直接用when语句实现 ?

    1.5K40

    kotlin基本语法

    if条件语句 if语句拥有和java几乎一样的功能和用法,不过kotlin的if具有返回值,这使得它可以利用语法糖来简化代码,以每个条件的最后一行作为返回值 fun hhh(name :String...,adress :String ) = if (name.length > adress.length) name.length else adress.length when 条件语句...类似于java里面的switch语句,不过解决了很多痛点,例如break经常忘记加,以及匹配值类型的局限性,利用when可以省去很多不必要的代码 //基本形式为 匹配值 -> {代码块} fun getScore...== "jim" -> 77 else -> 0 } 循环语句 kotlin 里面的for循环是for in ,比java里面的加强for更加好用,while的用法二者几乎一样...//代表为空什么都不做,不为空执行句号后面的逻辑 ?://不为空返回左边,否则返回右边的 !!

    59030

    Kotlin入门(6)条件分支的实现

    上一篇文章介绍了字符串的相关操作,其中示例代码用到了if和for语句,表面上看,Kotlin对控制语句的处理与Java很像,可实际上,Kotlin在这方面做了不少的改进...,所以本篇和下一篇文章就分别介绍Kotlin如何操作条件判断和循环语句。...说起条件判断,最简单的莫过于人尽皆知的if...else...了,这个东东从C语言延续到Java,再进化到Kotlin,基本用法仍是一样的,看看下面的示例代码就知道了: var is_odd:...+1) % 3 } 从以上代码可以看出when/else与switch/case有以下几点区别: 1、关键字switch被when取代: 2、判断语句“case 常量值:”被“常量值 ->”取代...; 3、每个分支后面的break语句取消了,Kotlin默认一个分支处理完就直接跳出多路语句; 4、关键字default被else取代; 跟优化后的if/else一样,Kotlin中的when/else

    93540

    Kotlin快速上手

    条件语句 Kotlin 提供了几种用来实现条件逻辑的机制,其中最常见的是 if-else 语句。...这样,您就可以在单个条件语句中表示更精细且更复杂的逻辑,如以下示例所示: if (count == 42) { println("I have the answer.") } else...随着条件语句的复杂性不断增加,您可以考虑将 if-else 表达式替换为 when 表达式,如以下示例所示: val answerString = when { count == 42...when 表达式示例中的代码在功能上与上一个示例中的代码等效,但可以说更易读。 Kotlin 的条件语句彰显了它的一项更强大的功能,即智能类型转换。...这意味着,您可以直接从 Kotlin 利用现有的 Java 库。此外,绝大多数 Android API 都是用 Java 编写的,您可以直接从 Kotlin 调用它们。

    1.2K10

    第2章 Kotlin 语法基础第2章 Kotlin 语法基础

    if else 逻辑判断, 结合if使用 while while 循环 do do 循环 when 条件判断 interface 接口声明 file 文件 field 成员 property 属性 receiver...可分为: 分支语句(if 、 when) 循环语句(for、while ) 跳转语句 (return 、 break 、continue、throw) 2.3.1 if表达式 if-else语句是控制程序流程的最基本的形式...when会对所有的分支进行检查直到有一个条件满足。但相比switch而言,when语句要更加的强大,灵活。..., kotlin.Int) -> kotlin.Int >>> sum(1,1) 2 后面的函数体语句有没有大括号 {} 意思完全不同。...kotlin 中 return 语句会从最近的函数或匿名函数中返回,但是在Lambda表达式中遇到return,则直接返回最近的外层函数。

    2.7K20

    Kotlin 基础 | 拒绝语法噪音

    这篇以一个刚从 Java 转到 Kotlin 程序员的视角分享下 Kotlin 给我的第一印象。 new 分号 类型 新建对象不需要new关键词。 任何语句的结尾不需要; 但加上也不会有语法错误。...{ } return kotlin中的语句和表达式的唯一区别是:表达式有值,而语句没有。...when是一个表达式,这意味着它有返回值,返回值等于命中分支中最后一条语句的返回值。 default java中的default保留字用于接口中默认方法的实现。在kotlin中可以省去它。...语句末尾不需要; 但加上也不会有语法错误。 kotlin 中类和方法默认是final的,他们不能被继承和重写。只有通过加上open后才能被继承和重写。...kotlin 中没有基本数据类型,而是用其对应的包装类表示。 给接口方法添加默认实现时不需要default关键字。 kotlin 中的语句和表达式的唯一区别是:表达式有值,而语句没有。

    1.1K30

    Android:这是一份全面 & 详细的Kotlin入门学习指南

    布尔类型(Boolean) Kotlin的Boolean类似于Java的boolean类型,其值只有true 、false Boolean内置的函数逻辑运算包括: || – 短路逻辑或 && – 短路逻辑与...控制流语句 控制流语句主要包括:if、when、for 和 while。...if语句 Kotlin中的if语句与Java用法类似 区别在于:Kotlin的if语句本身是一个表达式,存在返回值 var c = if (a > b) 3 else 4 // 若a > b,则返回3...break; default: break; } // Kotlin中的when语句 var a = 0 when (a) { 0 -> {代码块1}...语句在满足条件的分支执行后,会终止when语句执行 for语句 类似Java中的for语句 // 示例1:表达一个数字是否在目的范围内 // Java中的for语句 for (int i = 0; i

    2.8K20

    Carson带你学Android:这是一份全面 & 详细的Kotlin入门学习指南

    布尔类型(Boolean) Kotlin的Boolean类似于Java的boolean类型,其值只有true 、false Boolean内置的函数逻辑运算包括: || – 短路逻辑或 && – 短路逻辑与...控制流语句 控制流语句主要包括:if、when、for 和 while。...if语句 Kotlin中的if语句与Java用法类似 区别在于:Kotlin的if语句本身是一个表达式,存在返回值 var c = if (a > b) 3 else 4 // 若a > b,则返回3...break; default: break; } // Kotlin中的when语句 var a = 0 when (a) { 0 -> {代码块1}...语句在满足条件的分支执行后,会终止when语句执行 for语句 类似Java中的for语句 // 示例1:表达一个数字是否在目的范围内 // Java中的for语句 for (int i = 0; i

    2.2K20

    介绍Kotlin第二部分(翻译篇)

    语句,最后一行将被返回。...关于Kotlin和lambdas的最好部分是类型推断,当类型不匹配时,它就在你的代码下面出现一条红色的线。通过编译器的这种帮助,您可以将精力放在业务逻辑上,而不是试图找出循环应该遍历多少遍。...如果您主要编写的是Kotlin代码,那您将会从NullPointException解放出来。然而Kotlin与Java高度互操作,当你传入的数据可能为空时。Kotlin会让你处理这个十亿美元的错误。...编译器知道,在完成null检查之后,就可以使用我们的变量,红色波浪线就会从print语句中消失。在第二个例子,我们熟悉的问号再次出现了,但是这一次担任是不同的角色。...第二个功能修复了:它做了一个简单的is检查,在这一点上,Kotlin智能的将该值转换为Int,因此它可以在if语句中使用。

    98940
    领券