通過對比語法差異,讓會JAVA的你快速學會Kotlin的開源寶藏專案
阿新 • • 發佈:2022-03-06
今天有個小夥伴來問TJ君,說自己JAVA用的賊溜,想再學習下Kotlin,問TJ君上手難不難?
怎麼說呢?其實TJ君一直覺得語言這方面,是觸類旁通、一通百通的,既然JAVA已經賊溜了,想必學其他的語言也一定事半功倍。
不過呢,如果有好的輔助,肯定就更加容易學會拉,今天TJ君就和大家分享一個對比展示Java和Kotlin兩種語言在語法上不同地方的專案,from-java-to-kotlin,可以快速幫助會JAVA的小夥伴掌握Kotlin的編寫技巧!
專案沒有去講大道理,而是用最實際的程式碼來展示不同之處,TJ君帶你一起來看看:
列印日誌
//Java System.out.print("Amit Shekhar"); System.out.println("Amit Shekhar"); //Kotlin print("Amit Shekhar") println("Amit Shekhar")
常量與變數
//Java
String name = "Amit Shekhar";
final String name = "Amit Shekhar";
//Kotlin
var name = "Amit Shekhar"
val name = "Amit Shekhar"
null值的申明
//Java
String otherName;
otherName = null;
//Kotlin
var otherName : String?
otherName = null
for迴圈
//java for (int i = 1; i <= 10 ; i++) { } for (int i = 1; i < 10 ; i++) { } for (int i = 10; i >= 0 ; i--) { } for (int i = 1; i <= 10 ; i+=2) { } for (int i = 10; i >= 0 ; i-=2) { } for (String item : collection) { } for (Map.Entry<String, String> entry: map.entrySet()) { } //Kotlin for (i in 1..10) { } for (i in 1 until 10) { } for (i in 10 downTo 0) { } for (i in 1..10 step 2) { } for (i in 10 downTo 0 step 2) { } for (item in collection) { } for ((key, value) in map) { }
方法定義
//Java
void doSomething() {
// logic here
}
void doSomething(int... numbers) {
// logic here
}
//Kotlin
fun doSomething() {
// logic here
}
fun doSomething(vararg numbers: Int) {
// logic here
}
是不是這樣看這樣學就更加直觀明白?還有更多的不同之處等著小夥伴自己來看,覺得好的話,記得幫TJ君點個贊哦!專案地址如下:https://github.com/MindorksOpenSource/from-java-to-kotlin
TJ君將之前發過的各種專案及工具進行了整理,收錄到了GitHub專案,歡迎各位小夥伴光臨Star,地址如下:https://github.com/Wechat-TJ/TJ-WORLD-FORU