MyKotlin
1药磺、Kotlin介紹
[Kotlin](https://kotlinlang.org/)
Kotlin是一門基于JVM的編程語言,它正成長為Android開發(fā)中用于替代Java語言的繼承者忌怎。Java是世界上使用最多的編程語言之一,當(dāng)其他編程語言為更加便于開發(fā)者使用而不斷進化時,Java并沒有像預(yù)期那樣及時跟進衍慎。
Java缺失的很多特性在最新的修訂版中逐漸覆蓋到了,但Android開發(fā)者暫時還沒能夠使用它們皮钠。這就使得類似Kotlin這樣的語言有了用武之地了:在舊的開發(fā)環(huán)境中使用現(xiàn)代語言的特性稳捆。
Kotlin是什么?
Kotlin是由JetBrains創(chuàng)建的基于JVM的編程語言麦轰,IntelliJ正是JetBrains的杰作乔夯,而Android Studio是基于IntelliJ修改而來的。Kotlin是一門包含很多函數(shù)式編程思想的面向?qū)ο缶幊陶Z言款侵。
Kotlin生來就是為了彌補Java缺失的現(xiàn)代語言的特性末荐,并極大的簡化了代碼,使得開發(fā)者可以編寫盡量少的樣板代碼新锈。
2鞠评、配置工程
新建一個Project "MyKotlin"
在項目的build.gradle上添加kotlin版本號
// Top-level build file where you can add configuration options common to all sub-projects/modules.
ext.kotlin_version = "1.0.0-rc-1036"
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
在module中的build.gradle添加kotlin的依賴
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
再添加對android的支持
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
再添加java的編譯路徑,在main下創(chuàng)建kotlin目錄 并在gradle文件寫上
完整的build.gradle如下
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.example.mykotlin"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
代碼如圖所示
這里寫圖片描述
3壕鹉、代碼轉(zhuǎn)換
可以選擇MainActivity 然后選擇code-->>Convert Java File to Kotlin File ...
然后將生成的文件kt 剪切到kotlin目錄下剃幌。
kt 代碼如下
package com.example.mykotlin
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
tv.text = "Hello MyKotlin"
tv.textSize = 20.0f
}
}
最終運行如圖所示:
運行效果