Kotlin基礎(一)
阿新 • • 發佈:2018-11-30
1.Hello Kotlin
2.kotlin的資料型別
4.字串的拼接
5.條件控制
6.字串的比較
7.kotlin的空值處理
8.when 表示式
9.迴圈for
10.集合list、map
1.Hello Kotlin
fun main(args: Array<String>) {
println("Hello Kotlin")
}
2.kotlin的資料型別
型別 | 位寬度 |
---|---|
Double | 64 |
Float | 32 |
Long | 64 |
Int | 32 |
Short | 16 |
Byte | 8 |
4.字串的拼接
fun nameLength(name: String): String {
return "Hello!$name,你的名字有${name.length}個字"
}
5.條件控制
fun main(args: Array<String>) {
var a = 3
var b = 5
println("${a}和${b}中的最大值是${returnBig(a, b)}")
}
fun returnBig(a: Int, b: Int): Int {
return if (a > b) a else b
}
6.字串的比較
//kotlin中的字串"=="相當於java中的equals
//kotlin中的equals過載的方法第二個引數如果為true表示忽略大小寫
var str1 = "許可"
var str2 = "許可"
println(str1 == str2) //true
println (str1.equals(str2)) //true
var str3 = "xuke"
var str4 = "XuKe"
println(str3 == str4) //false
println(str3.equals(str4, true)) //true
7.kotlin的空值處理
//kotlin中函式接收的引數預設是非空,如果再型別的後面加上"?"表示引數可以為空
fun main(args: Array<String>) {
sayHello(null) //Hello!null
}
fun sayHello(name: String?) {
println("Hello!$name")
}
8.when 表示式
//類似於java中的switch,但是更強大更簡單
fun gradeStudent(score:Int){
when (score) {
10 -> println("滿分")
9 -> println("優秀")
8 -> println("一般")
7 -> println("還行")
6 -> println("及格")
else -> println("不及格")
}
}
fun gradeStudentPrintln(score: Int): String {
var print = when (score) {
10 -> "滿分"
9 -> "優秀"
8 -> "一般"
7 -> "還行"
6 -> "及格"
else -> "不及格"
}
return print
}
9.迴圈for
//計算:1+2+3+…+100
fun main(args: Array<String>) {
var nums = 1..100 //閉區間[1,100]
var result = 0
for (num in nums) {
result += num
}
println("結果:$result") //結果:5050
}
//計算:1+2+3+…+99
fun main(args: Array<String>) {
var nums = 1 until 100 //開區間[1,100)
var result = 0
for (num in nums) {
result += num
}
println("結果:$result") //結果:4950
}
語法step 步長
var nums2 = 1..10
for (s in nums2 step 4){
print("$s ") //1 5 9
}
方法reversed() 反轉
var nums2 = 1..10
var nums3 = nums2.reversed()
for (s in nums3){
print("$s ") //10 9 8 7 6 5 4 3 2 1
}
方法count() 總數
var nums2 = 1..10
println("總數為:" + nums2.count()) //總數為:10
10.集合list、map
- list
遍歷集合
var lists = listOf("java", "android", "kotlin", "react native", "flutter", "javascript")
for (list in lists) {
print("$list ")
}
輸出:
java android kotlin react native flutter javascript ios
按照key value遍歷
for ((key, value) in lists.withIndex()) {
println("$key -> $value")
}
輸出:
0 -> java
1 -> android
2 -> kotlin
3 -> react native
4 -> flutter
5 -> javascript
6 -> ios
- map
var map = TreeMap<String, String>()
map["tenuous"] = "脆弱的,微弱的"
map["carp"] = "抱怨,挑小毛病"
map["nourish"] = "撫養,資陽,培養"
println(map["carp"]) //抱怨,挑小毛病