
kotlin
安卓机器人
从事android开发,热爱Java,热爱移动平台,喜爱C#,当然最重要还是爱情,一直默默的寻找着自己的程序爱情
展开
-
Kotlin汇总1
Android官方开始支持kotlin了,可以看下Android Announces Support for Kotlin。学习kotlin的优势是非常明显的,首先Android studio是基于intellij idea开发的,Google也开始把kotlin作为Android的标准开发语言。对于Android开发者来说,学习kotlin是非常容易的事情,很平滑的过渡。旧代码Java新代码kot原创 2017-05-30 15:20:40 · 402 阅读 · 0 评论 -
kotlin项目开发总结
前言最近都是在用Kotlin开发Android项目,总结了一些心得在这里和大家分享1. 定义变量kotlin定义变量有三种形式1)使用var定义可修改变量,最常见的用法,也是很灵活,private var point: Point? = null//使用的时候,因为point是可空的,所以有两种用法println(point?.x) //如果你不能确保point是否为空println(point原创 2017-07-07 18:13:18 · 1184 阅读 · 0 评论 -
kotlin源码分析-分析和使用Collections集合
集合api提供了很多有用的方法,基本包含了java集合类中的所有方法,提供了更多的扩展。我们来看看有什么特别的方法,以及怎么使用,深入讲解闭包的封装和使用/** * Returns `true` if all elements match the given [predicate]. */public inline fun <T> Iterable<T>.all(predicate: (T)原创 2017-06-25 17:21:14 · 2400 阅读 · 0 评论 -
kotlin进阶-快速开发
前言kotlin很强大,而且可以兼容java一起使用,为了能够在实际项目开发中快速使用,整理了一个模板工程。代码地址:https://github.com/Sherchen/SimpleKotlinBoilerplate介绍为了快速上手,结合了当前流行的一些框架,开发了 干货网的一个简单demo. 采用闭包方式进行代码封装,可以从代码量上比较java,确实减少了很多。1. 采用MVPMVP采用的是原创 2017-06-24 17:35:45 · 733 阅读 · 0 评论 -
kotlin源码分析-标准内置函数
1. TODO方法声明:@kotlin.internal.InlineOnlypublic inline fun TODO(): Nothing = throw NotImplementedError()方法使用:fun test(){ TODO("Not implemented")}方法说明:有点类似于java的//todo,但是不同的是,因为它的方法告诉我们,它会抛出一个异常,也就是原创 2017-06-29 22:41:48 · 1861 阅读 · 0 评论 -
kotlin汇总10-Java调用kotlin
Java可以很容易的调用kotlin代码1属性比如kotlin有var firstName: String 其实等同于在Java中下面的定义private String firstName;public String getFirstName() { return firstName;}public void setFirstName(String firstName) { th原创 2017-06-02 22:28:57 · 1922 阅读 · 0 评论 -
kotlin深入1
前言刚好这段时间没什么事,抓紧时间看了下几个kotlin的开源项目,在这里做个自我汇总。1.兼容性kotlin可以完全兼容Java,以前积累的Java库和Java世界很好用的开源框架,比如retrofit,rxjava,dagger,butterknife可以直接拿过来用。所以有信心的话可以考虑新项目直接从kotlin开发,当然项目评估的时候,要注意时间,毕竟新语言刚开始用的不会像Java那么熟练2原创 2017-06-06 17:20:19 · 795 阅读 · 0 评论 -
kotlin汇总9-在kotlin中调用java
1.在kotlin中调用Java下面的几乎全java代码都可以直接在kotlin使用import java.util.*fun demo(source: List<Int>) { val list = ArrayList<Int>() // 'for'-loops work for Java collections: for (item in source) {原创 2017-06-01 20:42:44 · 2557 阅读 · 0 评论 -
kotlin汇总8-其他2
1.Null安全1.1通过代码来理解var a: String = "abc"val l = a.length // oka = null // compilation errorvar b: String? = "abc"val l = b.length // error: variable 'b' can be nullb = null // ok1.2安全调用原创 2017-06-01 19:59:11 · 415 阅读 · 0 评论 -
kotlin汇总8-其他1
1.解构声明(Destructuring Declarations)声明val (name, age) = person 使用的时候println(name)println(age)内部机制是下面这样val name = person.component1()val age = person.component2()在for循环的时候还可以这样for ((a, b) in collection)原创 2017-06-01 18:12:01 · 321 阅读 · 0 评论 -
kotlin汇总7-Coroutines
在kotlin1.1,Coroutines还处于实验阶段。 有些API启动耗时操作比如:网络IO,文件流IO,CPU/GPU要求高的工作,它们会导致调用阻塞直到操作完成。Coroutines通过一种更便宜,更容易控制的suspension(挂起)操作,来避免线程阻塞。Coroutines把复杂的运算移到了libraries,因而简化了异步编程。在Coroutine中,程序逻辑可以顺序表达(同步),翻译 2017-06-01 17:41:39 · 1065 阅读 · 0 评论 -
kotlin汇总6-函数
1.基础知识函数声明使用fun关键字fun double(x: Int): Int {}函数调用val result = double(2) //调用普通函数Sample().foo() // create instance of class Sample and calls foo//调用类成员函数使用infix标记// Define extension to Intinfix fun Int原创 2017-06-01 16:33:46 · 395 阅读 · 0 评论 -
Kotlin汇总5-内部类,枚举类,对象,代理
1. 内部类内部类是内嵌类在kotlin是不一样的,比如下面是内嵌类class Outer { private val bar: Int = 1 class Nested { fun foo() = 2 }}val demo = Outer.Nested().foo() // == 2下面是内部类class Outer { private val b原创 2017-05-31 17:40:03 · 490 阅读 · 0 评论 -
Kotlin汇总3-接口,可见作用域,扩展,数据类,密封类
1.接口kotlin的接口比较像Java8,可以有实现的方法interface MyInterface { fun bar() fun foo() { // optional body }}接口中的属性可以是抽象的,也可以是提供实现的。interface MyInterface { val prop: Int // abstract val pro原创 2017-05-31 16:22:22 · 556 阅读 · 0 评论 -
Kotlin汇总4-泛型
Java的泛型比较弱,如下面代码// JavaList<String> strs = new ArrayList<String>();List<Object> objs = strs; // !!! The cause of the upcoming problem sits here. Java prohibits this!objs.add(1); // Here we put an In原创 2017-05-31 17:11:35 · 476 阅读 · 0 评论 -
Kotlin汇总2-类构造,属性,字段
1.类构造函数1.1 基础构造函数class Person constructor(firstName: String) {}首选要清楚kotlin的默认修饰是public,所以上面的也可以简写成下面的class Person(firstName: String) {}如果像把构造函数变成privateclass Person private constructor(firstName: Str原创 2017-05-31 10:58:04 · 418 阅读 · 0 评论 -
2分钟了解kotlin:优点,缺点,设计原则
1. 优点kotlin提供了很多好的特性,比如:null安全检测,属性访问,unchecked exceptions, publication有更详细的介绍。1.1 java 自动转换成kotlinkotlin项目开发总结有介绍如何使用,这个是有JetBrains提供的,目前已经集成到了IDEA/AS, 虽然它不是很完美(我的上篇博客也已经介绍到了),但是对比重新用Kotlin开发一个完全一样功能的原创 2017-07-08 21:23:35 · 15337 阅读 · 0 评论