随笔分类 - kotlin
摘要:Gradle在编译之前,会检查输入、输出,若无变化,则不会重复编译。这是Gradle编译速度提升的重要原因。 plugins { java } task("getSrcName",{ inputs.dir("src")//输入 outputs.file("info.txt")//输出 doFirst
阅读全文
摘要:task("opendoor",{ var animal = "elephant"//扫描时执行 doFirst{//运行时执行 } }) task("putelephant",{ }).dependsOn("opendoor") task("closedoor",{ }).dependsOn("putelephant")
阅读全文
摘要:在IDEA中,使用Gradle管理项目 我们新建项目: 这样我们的第一个 gradle管理的文件就完成了。这里main和Girl类:
阅读全文
摘要:密封类 密封类用来表示受限的类继承结构:当一个值为有限几种的类型, 而不能有任何其他类型时。在某种意义上,他们是枚举类的扩展:枚举类型的值集合 也是受限的,但每个枚举常量只存在一个实例,而密封类 的一个子类可以有可包含状态的多个实例。 声明一个密封类,使用 sealed 修饰类,密封类可以有子类,但
阅读全文
摘要:Kotlin 枚举类 枚举类最基本的用法是实现一个类型安全的枚举。 枚举常量用逗号分隔,每个枚举常量都是一个对象。 枚举初始化 每一个枚举都是枚举类的实例,它们可以被初始化: 默认名称为枚举字符名,值从0开始。若需要指定值,则可以使用其构造函数: 枚举还支持以声明自己的匿名类及相应的方法、以及覆盖基
阅读全文
摘要:尾调用的重要性在于它可以不在调用栈上面添加一个新的堆栈帧——而是更新它,如同迭代一般。 尾递归因而具有两个特征: 调用自身函数(Self-called); 计算仅占用常量栈空间(Stack Space)。 tailrec fun fcnq(n:Int, pf:Int,ps: Int):Int{ if
阅读全文
摘要:a = 1..10 //[1,10] b = 1 unitl 10 //[1,10)
阅读全文
摘要:When 表达式 when 将它的参数和所有的分支条件顺序比较,直到某个分支满足条件。 when 既可以被当做表达式使用也可以被当做语句使用。如果它被当做表达式,符合条件的分支的值就是整个表达式的值,如果当做语句使用, 则忽略个别分支的值。 when 类似其他语言的 switch 操作符。其最简单的
阅读全文
摘要:NULL检查机制 Kotlin的空安全设计对于声明可为空的参数,在使用时要进行空判断处理,有两种处理方式,字段后加!!像Java一样抛出空异常,另一种字段后加?可不做处理返回值为 null或配合?:做空判断处理 当一个引用可能为 null 值时, 对应的类型声明必须明确地标记为可为 null。 当
阅读全文
摘要:strring.equal(str,boolean) boolean=False,默认值,区分大小写 boolean=True,不区分大小写
阅读全文
摘要:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android
阅读全文
摘要:通过VIewSwitcher切换视图。这个用到了baseAdapter,还是不太懂,先记个笔记。 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="matc
阅读全文
摘要:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android
阅读全文
摘要:中秋节学习,, 通过拖动滑块,改变图片的透明度 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orient
阅读全文
摘要:顾名思义,就是进度条。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="verti
阅读全文
摘要:使用stackView,表现出view堆叠的效果,可以拖动,也可以触发事件切换 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android
阅读全文
摘要:使用AdapterViewFiller组件设置图片轮播,该组件可以自动切换view <?xml version="1.0" encoding="utf-8" ?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/an
阅读全文