![](https://img-blog.csdnimg.cn/74287c53361549c18efaf25be10fc4f2.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Kotlin基础
文章平均质量分 81
基础
松仔log
初出茅庐的程序员
展开
-
Kotlin基础——异步和并发
故同步不是阻塞,同步也可以是非阻塞的,如在执行同步代码块时,线程可以不阻塞而是一直在后台运行但多线程只是看上去同时执行,底层原理是通过CPU调度来实现的,当一个线程切换到另一个线程时,通常需要切换线程也是需要开销的,故当线程切换很频繁时,可能会导致多线程并不优于单线程。原创 2024-06-28 19:12:14 · 572 阅读 · 0 评论 -
Kotlin基础——Typeclass
如在Iterable新增泛型方法时对应的List、Set实现上述方法时仍需要返回具体的类型使用高阶类型可以解决上述问题,,Kotlin可以通过扩展实现高阶类型(下面例子都是根据这个来实现)原创 2024-06-22 17:45:45 · 728 阅读 · 0 评论 -
Kotlin基础——优化设计模式
使用Kotlin优化Java的设计模式写法。原创 2024-06-18 19:41:16 · 565 阅读 · 0 评论 -
Kotlin基础——DSL
通过扩展函数实现获取一天前和一天后的日期。原创 2024-02-24 18:02:35 · 991 阅读 · 0 评论 -
Kotlin基础——注解和反射
同Java一样,注解放到函数或类最前面@Deprecated可以提供实参,且通过ReplaceWith为IDEA提示正确的用法注解的参数类型为:基本数据类型、字符串、枚举、类引用、其他的注解类,以及他们的数组,但需要注意。原创 2024-02-23 10:40:02 · 973 阅读 · 0 评论 -
Kotlin基础——泛型
编译器一般可以推导出类型实参若创建空的list,则需要显示指定类型实参,可以用如下两种方式。原创 2024-02-19 10:30:01 · 1203 阅读 · 0 评论 -
Kotlin基础——高阶函数和内联函数
高阶函数,其可用Lambda或函数引用表示。原创 2024-01-29 18:47:20 · 1054 阅读 · 1 评论 -
kotlin基础——重载
使用operator定义plus()方法后,可以直接使用+号求和若定义为扩展函数,也可实现可供选择的重载运算有如下,不会自动支持交换性不要求两个运算数是相同类型返回类型也可不同于任一运算数类型Kotlin中的位运算符如下。原创 2024-01-04 15:37:25 · 1319 阅读 · 0 评论 -
Kotlin基础——类型系统
对于如下Java函数,可传递null或者值为null的String而在Kotlin中,如下函数不能传递null或值为null的String,否则会在编译期报错,保证了永远不会在运行时报空指针异常。原创 2023-11-29 17:28:51 · 947 阅读 · 0 评论 -
Kotlin基础——Lambda和函数式编程
使用 { } 定义Lamba,调用run运行更常用的为,还可以存储到变量中,把变量作为普通函数对待maxBy()接收一个Lambda,传递如下Lambda可使用函数参数和局部变量。原创 2023-11-24 10:49:38 · 908 阅读 · 0 评论 -
Kotlin基础——接口、类和object
接口中可以声明域,每个子类都要初始化接口中的域接口中也可以使用getter和setter,前提是不引用变量。原创 2023-11-11 19:25:06 · 513 阅读 · 0 评论 -
Kotlin基础——枚举、When、in、for
这也是Kotlin唯一必须使用分号的地方。原创 2023-10-28 14:51:09 · 969 阅读 · 0 评论 -
Kotlin基础——变量、函数、字符串
转换后的代码如下,name为var变量(默认带有getter和setter),而age为val变量(只有getter)上面称为代码块函数体,当函数体由单个表达式构成时,可简化为表达式函数体(自动会推导出返回类型)Kotlin和Java一样是静态语言,所有表达式类型在编译期已经确定。只有数据没有其他代码的对象通常叫做值对象,如JavaBean。如果一个属性可以根据其他属性计算,可使用自定义getter。将上述Java复制到代码.kt文件,会触发自动转换(原创 2023-10-24 19:15:02 · 608 阅读 · 0 评论