Kotlin 開發(fā)環(huán)境詳解及簡(jiǎn)單實(shí)例
Hello Kotlin

- 輕量級(jí):這一點(diǎn)對(duì)于Android來說非常重要。項(xiàng)目所需要的庫(kù)應(yīng)該盡可能的小。Android對(duì)于方法數(shù)量有嚴(yán)格的限制,Kotlin只額外增加了大約6000個(gè)方法。
- 互操作:Kotlin可與Java語言無縫通信。這意味著我們可以在Kotlin代碼中使用任何已有的Java庫(kù);因此,即便這門語言還很年輕,但卻已經(jīng)可以使用成百上千的庫(kù)了。除此之外,Kotlin代碼還可以為Java代碼所用,這意味著我們可以使用這兩種語言來構(gòu)建軟件。你可以使用Kotlin開發(fā)新特性,同時(shí)使用Java實(shí)現(xiàn)代碼基的其他部分。
- 強(qiáng)類型:我們很少需要在代碼中指定類型,因?yàn)榫幾g器可以在絕大多數(shù)情況下推斷出變量或是函數(shù)返回值的類型。這樣就能獲得兩個(gè)好處:簡(jiǎn)潔與安全。
- Null安全:Java最大的一個(gè)問題就是null。如果沒有對(duì)變量或是參數(shù)進(jìn)行null判斷,那么程序當(dāng)中就有可能拋出大量的NullPointerException,然而在編碼時(shí)這些又是難以檢測(cè)到的。Kotlin使用了顯式的null,這會(huì)強(qiáng)制我們?cè)诒匾獣r(shí)進(jìn)行null檢查?!?/li>
- 更多特性可見官網(wǎng)
環(huán)境配置

package com.steveyg.hellokotlin; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.View; import android.view.Menu; import android.view.MenuItem; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
package com.steveyg.hellokotlin import android.os.Bundle import android.support.design.widget.FloatingActionButton import android.support.design.widget.Snackbar import android.support.v7.app.AppCompatActivity import android.support.v7.widget.Toolbar import android.view.View import android.view.Menu import android.view.MenuItem class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } }


apply plugin: 'kotlin-android-extensions'
<TextView android:id="@+id/textview" android:layout_width="wrap_content" android:layout_height="wrap_content" />
import kotlinx.android.synthetic.main.content_main.*
textview.text = "hello world";

package com.steveyg.hellokotlin.java; public class Demo { public String getType(){ return "Java"; } }
var demo = Demo(); textview.text = demo.type;

package com.steveyg.hellokotlin.kotlin class KotlinDemo { fun getType(): String{ return "Kotlin"; } }
public String getKotlinType(){ return new KotlinDemo().getType(); }
textview.text = demo.kotlinType;

本文代碼:http://xiazai.jb51.net/201706/yuanma/helloKotlin-master(jb51.net).rar
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
GC調(diào)優(yōu)實(shí)戰(zhàn)之高分配速率High?Allocation?Rate
這篇文章主要為大家介紹了GC調(diào)優(yōu)之高分配速率High?Allocation?Rate的實(shí)戰(zhàn)示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-01-01Java實(shí)現(xiàn)添加文字水印和圖片水印功能
為圖片添加水印是一種常用的圖片處理技術(shù),本文主要介紹了Java實(shí)現(xiàn)添加文字水印和圖片水印功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05SpringBoot的API文檔生成工具SpringDoc使用詳解
這篇文章主要為大家介紹了SpringBoot的API文檔生成工具SpringDoc使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06java理論基礎(chǔ)Stream管道流狀態(tài)與并行操作
這篇文章主要為大家介紹了java理論基礎(chǔ)Stream管道流狀態(tài)與并行操作,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03Sentinel實(shí)現(xiàn)動(dòng)態(tài)配置的集群流控的方法
這篇文章主要介紹了Sentinel實(shí)現(xiàn)動(dòng)態(tài)配置的集群流控,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04Java模擬單鏈表和雙端鏈表數(shù)據(jù)結(jié)構(gòu)的實(shí)例講解
這篇文章主要介紹了Java模擬單鏈表和雙端鏈表數(shù)據(jù)結(jié)構(gòu)的實(shí)例,注意這里的雙端鏈表不是雙向鏈表,是在單鏈表的基礎(chǔ)上保存有對(duì)最后一個(gè)鏈接點(diǎn)的引用,需要的朋友可以參考下2016-04-04Java實(shí)現(xiàn)評(píng)論回復(fù)功能的完整步驟
這篇文章主要給大家介紹了關(guān)于Java實(shí)現(xiàn)評(píng)論回復(fù)功能的完整步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11詳解使用Spring3 實(shí)現(xiàn)用戶登錄以及權(quán)限認(rèn)證
這篇文章主要介紹了詳解使用Spring3 實(shí)現(xiàn)用戶登錄以及權(quán)限認(rèn)證,這里整理了詳細(xì)的代碼,有需要的小伙伴可以參考下。2017-03-03