Home

fangxiaogang

我可以!

Home About Github Email

2017-06-11
Kotlin 笔记

在今年的 IO 大会上,Kotlin 成为了 Android 的官方开发语言,作为一个 Android 开发者是必须要学习并掌握的,由于刚确立为官方语言,完全的 Kotlin 是不会那么快的,就像苹果的 Swift 一样。虽然不是刻不容缓,但是学习 Kotlin 的语法和用法还是要提上日程,这篇为学习 Kotlin 的第一篇学习笔记,也提醒自己在工作之余好好学习 Kotlin。

什么是 Kotlin

Kotlin 是一种基于 JVM 的编程语言,由 JetBrains 开发,完全兼容 Java,更安全、更简洁。更简洁、更安全、兼容性更好、各种 IDE 或命令行工具都适用。

Kotlin 的特性

1 、简洁

使用 Kotlin 在很多地方可以少用很多的模板代码,因为在大部分典型的情况下都在语言中默认实现了。

这是典型的 Java 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
public class User {
private long id;
private String name;
private String addr;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
@Override public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", addr='" + addr + '\'' +
'}';
}
}

Kotlin就会简洁很多,所有的属性和访问器都会自动生成,以及 toString();

1
2
3
4
data class User(
var id: Long,
var name: String,
var addr: String)

哇,这是如此简洁,没有程序员会拒绝这样的代码,毕竟我们都是偷懒的。

2、空安全

NullPointerException 是每个 Java 开发者都会遇到的 Bug,怎么修改,加个空判断咯。但是这样的判断加多了其实也烦,代码也不够美观。Kotlin 跟其他现代语言一样,是空安全的,通过一个安全调用操作符(?)来明确地指定一个对象是否能为空。

1
2
var str: String = null; //✘ 直接报错,无法编译通过
var str: String ?= null; //✔ 添加安全调用操作符,明确指定 str 可以为空

fangxiaogang

scribble

Home About Github Email