自从谷歌宣布,kotlin为Android官方的开发语言,它确实火了,因为他有强大的背景,更因为它的安全,简洁大部分的人会说,我的项目是java,换成kotlin那成本太大了.其实kotlin的开发者早就想到这一点,kotlin官网强调:与java100%的交互.
为什么要学习kotlin
简而言之,在不牺牲性能或安全性的前提下,许多无数的Kotlin功能使代码比Java更加简洁易懂。
Kotlin编译为字节码,因此其性能与Java一样好。它具有与Java相同的编译时检查(还有更多内容,例如内置的可空性检查)。最重要的是,Kotlin的语言功能和标准库功能可实现简洁有效的代码。
简洁,因为这是提高程序员工作效率的关键因素。
最初是组装。每行代码仅给您提供整个程序的功能说明。这使得读取和写入都变得困难,因为您必须一次将如此多的代码保存在脑海中。
高级语言使我们可以在每一行代码中添加更多想法。例如,对列表进行排序在大多数现代语言中都是微不足道的。当每行代码获得更多功能时,编写较大的程序会更容易。
Kotlin优点
1. 简化空对象的处理(防止空指针)
2. 属性访问,代替Get/Set方法
- Kotlin代码
class User {
var name :String?=null
}
- Java代码
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
查看为什么Kotlin属性访问方式比Java的Get/Set方式好了解更多
3. 默认构造函数
- Kotlin代码
class User(var name: String)
- Java代码
public class User {
private String name;
public User(String name) {
this.name = name;
}
public String getName() {
return name.toUpperCase();
}
public void setName(String name) {
this.name = name.toUpperCase();
}
}
4. 快速创建List/Map集合类型
1) List
a) Kotlin代码
可变list
val list = listOf("a","b","c")
可变list
val list = mutableListOf("a","b","c")
b) Java代码
ArrayList list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
return list;
2) Map
a) Kotlin
不可变Map
val map = mapOf("key1" to "a", "key2" to "b")
可变Map
val map = mutableMapOf("key1" to "a", "key2" to "b")
b) Java
Map<String, String> map = new HashMap<String, String>();
map.put("key1", "a");
map.put("key2", "b");
下面给你们悄悄看看我从我师兄那里偷来的资料(毕业多年,现在字节当社畜)
需要的小伙伴可点击这里进入我的gitee免费领取!
- 先给观众姥爷们上一波目录
- 再来两张大致内容