Kotlin

kotlin 内联函数 inline

一、当函数被声明为内联函数(函数的前缀增加inline),那么函数体会被直接替换到函数被声明的地方,而不是被正常的调用。如下的代码 inline fun synchronized(lock: Lock, action: () -> Unit) { lock.lock() try { return a ......
函数 kotlin inline

kotlin 高阶函数

一、定义:以另一个函数作为参数或者返回值的函数 1、kotlin中,函数以lambda或者函数引用来表示 二、函数类型 1、如下是函数的类型 上述声明了函数的类型,括号内包含了该函数类型需要传入的参数类型,紧接着箭头,最后是返回的类型(在声明函数类型时候,返回类型即使是Unit也不可以省略) 2、函 ......
高阶 函数 kotlin

kotlin 重载运算符

一、二元运算符的重载 1、常见的运算符有:加、减、乘、除、求余;我们要重载这些运算符的操作 这里以加法重载运算符为例 data class Point(val x: Int, val y: Int) { operator fun plus(other: Point): Point { return ......
运算符 kotlin

Kotlin-嵌套类_内部类_匿名内部类

Kotlin-嵌套类&内部类&匿名内部类 1. 嵌套类 类可以被嵌套在其它类中: class Outer { private val bar: Int = 1 class Nested { fun foo() { println("foo in Outer#Nested#foo() ") } fun ......
Kotlin

kotlin lambda简介

一、作为函数的代码块 java的接口 public interface OnClickListener { void onClick(String v); } 1、使用java的方式进行创建匿名内部类的方式进行继承 OnClickListener listener = new OnClickList ......
简介 kotlin lambda

Kotlin: 高阶函数与Lambda表达式 (转)

Kotlin: 高阶函数与Lambda表达式 (转) 本文转自:https://rengwuxian.com/kotlin-lambda/ 看到一篇写得不错的关于kotlin 高阶函数与 Lambda的博文,特转载之。 1. Kotlin的高阶函数 Kotlin 很方便,但有时候也让人头疼,而且越方 ......
高阶 表达式 函数 Kotlin Lambda

kotlin 伴生对象

一、伴生对象的目标 1、java的类中有静态成员或函数但是kotlin中没有静态成员或者函数 2、但是伴生对象依赖包级别的函数和对象声明,可以用来替代java中的静态成员和函数 3、伴生对象的本质是静态的 class User private constructor(val nickname: St ......
对象 kotlin

Android Kotlin 协程初探

1 它是什么(协程 和 Kotlin协程) 1.1 协程是什么 维基百科:协程,英文Coroutine [kəru’tin] (可入厅),是计算机程序的一类组件,推广了协作式多任务的子程序,允许执行被挂起与被恢复。 作为Google钦定的Android开发首选语言Kotlin,协程并不是 Kotli ......
Android Kotlin

kotlin 属性的get和set方法

一、属性的继承 1、属性和函数类似也是可以继承 interface Parent { val addr: String // 这里是接口所以默认是open,如果是普通类中要被继承则需要显示写open } class Child: Parent { override val addr: String ......
属性 方法 kotlin get set

kotlin的构造方法

一、构造方法的组成 1、主构造方法 class View(tt: Int) {.....} class View constructor(tt: Int) {....} 如上所示有两种方式,且都是在类体外的括号中 第二种方式增加了constructor,正常情况下constructor是可以省略,除 ......
方法 kotlin

kotlin类继承结构

一、接口类型 1、和java一样:接口使用interface关键字 interface Clickable { fun click() } 2、和java的差异是:接口也允许有默认的实现,java则需要default关键字 interface Clickable { fun click() fun ......
结构 kotlin

kotlin的函数关于可变参数使用vararg

前提:kotlin在编译的时候会转换成对应的java 一、java的可变参数类型: java类型的类似: void func(Integer... values) {} 那么对应的kotlin的类型类似:fun func(vararg values: Int?) {} 注意:这里我使用的是Int? ......
函数 参数 kotlin vararg

kotlin函数的定义和调用

函数是以fun开头 一、函数的普通例子 这是一个带模板的函数 fun <T> joinToString1(collection: Collection<T>, sep: String, prefix: String, suffix: String): String { val result = St ......
函数 kotlin

Kotlin反射从父类获取子类成员属性

背景 有部分需求需要反射获取相关信息,例如,由于子类太多100+,需要在父类写toString方法涵盖子类的相关信息 实现过程 逻辑通过反射获取子类构造方法的参数 通过当前实例调用参数的获取方法,获取参数值 在父类的toString中输出和组建toString 代码 获取构造方法的参数 val pc ......
子类 属性 成员 Kotlin

kotlin基础知识

一、if的使用 1、if和java不一样的是:if是有结果的表达式 函数的返回值可以是:return if (a > b) a else b; 类似于java的 return a > b? a : b; 可能是这个原因所以kotlin没有这个三目运算符 二、函数体 kotlin除了循环外,大部分控制 ......
基础知识 基础 知识 kotlin

Kotlin Heroes: Episode 6 A. From Zero To Y

给定两个正整数 \(x, y\) 。变量 \(k\) 一开始为 \(0\) 。你可以多次进行以下两种操作之一: 对 \(k\) 加 \(1\) 。 对 \(k\) 加 \(x \cdot 10^p\) ,\(p\) 可以是任意一个非负数。 需要找到最小的操作次数使 \(k\) 到 \(y\) 。 及 ......
Episode Kotlin Heroes From Zero

Kotlin协程的异常处理

捕获异常 Kotlin协程中执行的代码如果可能发生异常,最简单直接的办法也是可以通过 try-catch 语句来捕获异常 GlobalScope.launch { try { println(1 / 0) } catch (e: Exception) { //can catch exception ......
Kotlin

Kotlin-大师班 第五章-随笔

数组 Array 1. 基础数据类型 Array 2. arrayOf:基础类型、字符串、自定义类对象,甚至类,甚至不同类型放在这一个数组里。 3. 不可变集合三兄弟,除了他们仨后面的都可变。 4. 可变集合 ArrayList,arrayListOf,mutabalListOf mutableSe ......
随笔 大师 Kotlin

Kotlin第一弹:Kotlin详细介绍

https://blog.csdn.net/m0_58941767/article/details/126679953 前言 Kotlin是什么? 一、为什么优先使用Kotlin进行Android开发? 二、Kotlin优先意味着什么? 三、Kotlin能做什么? 四、我们也使用Kotlin 五、K ......
Kotlin

Kotlin基础学习-入门篇

————————————————https://blog.csdn.net/zjm807778317/article/details/124188750 kotlin的历史Kotlin由JetBrains公司开发设计,2011年公布第一版,2012年开源。 2016年发布1.0正式版,并且JetBr ......
基础 Kotlin

在 Android Studio Java 项目里混合 Kotlin 编程

首先,先搞明白一个概念,这里的 Java 混合 Kotlin 是指文件层级的混合,即 Java 代码还是写在 .java 文件中,Kotlin 代码还是写在 .kt 文件中,只不过是可以在 Java 的代码中可以调用自己写好的 Kotlin 类,从 Java 的角度看,它并不知道它调用的这个类是 K ......
Android 项目 Studio Kotlin Java

Kotlin 基础入门

# 函数类型 在 Kotlin 中 函数是一等公民。 ``` // 定义 fun greetPeople(name: String, makeGreet: (String) -> Unit) // 调用 greetPeople("Jimy", :: greetingWithChinese) ``` ......
基础 Kotlin

Spring源码搭建导依赖时报错:Failed to apply plugin 'kotlin'.

原因是kotlin插件的版本与gradle中指定的版本不一致,我的是1.8.0,spring5.3.x版本gradle配置文件指定的kotlin版本是1.5.32,修改成1.8.0 ![](https://img2023.cnblogs.com/blog/2135157/202308/2135157 ......
源码 时报 Spring Failed plugin

Kotlin-大师班 第四章-随笔

1. init() Kotlin 中,当对象被创建时,调用 init() 做初始化。 2. Kotlin 的函数参数都是 val 类型的,都不可修改。 Kotlin 的函数参数在函数中不可修改。 3. 避免出现 shadow 的情况。 举个例子:就是函数内定义了一个变量,变量名和参数名相同。这样一来 ......
随笔 大师 Kotlin

kotlin协程异常处理之-CoroutineExceptionHandler

转载请标明出处:https://www.cnblogs.com/tangZH/p/17307406.html - [kotlin协程小记](http://77blogs.com/?p=73 "kotlin协程小记") - [协程的async使用](http://77blogs.com/?p=77 " ......
CoroutineExceptionHandler kotlin

kotlin协程异常处理之-try catch

- [kotlin协程小记](http://77blogs.com/?p=73 "kotlin协程小记") - [协程的async使用](http://77blogs.com/?p=77 "协程的async使用") - [kotlin协程异常处理之-try catch ](http://77blog ......
kotlin catch try

Kotlin-大师班 第三章-随笔

1. Kotlin中,不管是用 val 或是 var 声明的变量,都是不可为空的。 想让变量可空,需要在声明语句的类型后面加个问号。 2. elvis 运算符 ? : 当你要把一个 nullable 变量赋值给一个不可空变量时,使用该运算符。否则被赋值变量会被定义为可空变量。 3. double e ......
随笔 大师 第三章 Kotlin

Kotlin-大师班 第二章-随笔

1. AppCompatActicity.onCreate() 每次 Activity 创建时调用。 Activity 对应一个屏幕,如果你的应用程序中有多个屏幕,如登录屏幕、客人资料等,所有这些都是不同的 Activity。 可以理解为 Activity 对等于 屏幕。 2. setContent ......
随笔 大师 第二章 Kotlin

安卓kotlin的继续

https://developer.android.google.cn/jetpack/compose/tutorial?hl=zh-cn#animate-messages-while-expanding https://gitee.com/createmaker/my_android_empty_ ......
kotlin

Kotlin return@xxx 的坑

Kotlin Return 到标签 先看例子: ``` (1..5).forEach { if (it == 3) { return@forEach } println(it) } println("test over") ``` 这段代码执行结果是什么? 错误: ``` 1 2 test over ......
Kotlin return xxx