Kotlin--1.基础语法

目录

一.概念

二.基本语法

1.入门案例

2.变量声明

3.数据类型

4.字符串

(1)访问字符串

(2)字符串长度

(3)字符串函数

(4)比较字符串

(5)在字符串中查找字符串

(6)字符串模板

5.if-else

6.when

7.数组

8.范围

三.函数

1.实例

2.多个参数

3.返回值


一.概念

Kotlin 是一种现代化的静态类型编程语言,可在Java 虚拟机(JVM) 上运行。它由 JetBrains 开发,旨在提供更简洁、更安全和更高效的编程体验。Kotlin 具有与 Java 互操作性,并且大多数现有的 Java 代码可以无缝地迁移到 Kotlin 中。

Kotlin 具备许多特性,如可空类型 、扩展函数 、数据类 、Lambda 表达式 等,这些特性使得代码编写更加简洁和易读。Kotlin 还支持面向对象和函数式编程范式,能够满足不同编程风格的需求。

Kotlin 在 Android 开发中也得到了广泛的应用。它被 Google 官方列为Android 开发的官方语言,并且通过 Kotlin 的一些特性和语法糖,可以编写更简洁、更安全的 Android 应用程序。

二.基本语法

1.入门案例

创建了一个名为 **Main.kt**的 Kotlin 文件

Kotlin 复制代码
fun main() {
  println("Hello World")
}

idea直接右键运行

2.变量声明

Kotlin 复制代码
var variableName = value
val variableName = value

var 和 val 的区别在于用 var 关键字可以更改/修改 ,而 val 变量不能

与许多其他编程语言不同,Kotlin 中的变量不需要用指定的 type 声明(如"String"表示文本或"Int"表示数字,如果你熟悉的话)

Kotlin 复制代码
var name: String = "John" // String
val birthyear: Int = 1975 // Int

println(name)
println(birthyear)

3.数据类型

Kotlin 复制代码
val myNum = 5             // Int
val myDoubleNum = 5.99    // Double
val myLetter = 'D'        // Char
val myBoolean = true      // Boolean
val myText = "Hello"      // String
Kotlin 复制代码
val myNum: Int = 5                // Int
val myDoubleNum: Double = 5.99    // Double
val myLetter: Char = 'D'          // Char
val myBoolean: Boolean = true     // Boolean
val myText: String = "Hello"      // String
val myNum: Byte = 100           //Byte
val myNum: Short = 5000         //Short
val myNum: Long = 15000000000L   //Long

4.字符串

Kotlin 复制代码
var name: String
name = "John"
println(name)

(1)访问字符串

要访问字符串的字符(元素),您必须参考方括号内的索引号**。**

字符串索引从0开始。在下面的例子中,我们访问txt中的第一个和第三个元素:

Kotlin 复制代码
var txt = "Hello World"
println(txt[0]) // first element (H)
println(txt[2]) // third element (l)

(2)字符串长度

Kotlin 复制代码
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
println("The length of the txt string is: " + txt.length)

(3)字符串函数

Kotlin 复制代码
var txt = "Hello World"
println(txt.toUpperCase())   // 输出 "HELLO WORLD"
println(txt.toLowerCase())   // 输出 "hello world"

(4)比较字符串

compareTo(string) 函数比较两个字符串,如果相等则返回 0

Kotlin 复制代码
var txt1 = "Hello World"
var txt2 = "Hello World"
println(txt1.compareTo(txt2))  // Outputs 0 (they are equal)

(5)在字符串中查找字符串

indexOf() 函数返回指定文本在字符串(包括空格)中第一次出现的index(位置) ):

Kotlin 复制代码
var txt = "Please locate where 'locate' occurs!"
println(txt.indexOf("locate"))  // 输出 7

您还可以使用**plus()** 函数来连接两个字符串:

Kotlin 复制代码
var firstName = "John "
var lastName = "Doe"
println(firstName.plus(lastName))

(6)字符串模板

Kotlin 复制代码
var firstName = "John"
var lastName = "Doe"
println("My name is $firstName $lastName")

5.if-else

if-else和java中的一样

6.when

Kotlin 复制代码
val day = 4

val result = when (day) {
  1 -> "Monday"
  2 -> "Tuesday"
  3 -> "Wednesday"
  4 -> "Thursday"
  5 -> "Friday"
  6 -> "Saturday"
  7 -> "Sunday"
  else -> "Invalid day."
}
println(result)

// 输出 "Thursday" (day 4)
Kotlin 复制代码
  
    /**
     * 满足任何一个即可
     */
    when(flag){
        1,2,4 -> println("ok")
        10,12,31-> println("yes")
        else-> println("error")
    }

7.数组

要创建一个数组,请使用 **arrayOf()**函数,并将值放在其中的逗号分隔列表中:

Kotlin 复制代码
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
println(cars[0])
// 输出 Volvo

println(cars.size)
// 输出 4

if ("Volvo" in cars) {
  println("It exists!")
} else {
  println("It does not exist.")
}

for (x in cars) {
  println(x)
}

8.范围

Kotlin 复制代码
for (chars in 'a'..'x') {
  println(chars)
}

for (nums in 5..15) {
  println(nums)
}

三.函数

1.实例

创建一个名为 "myFunction" 的函数,它应该输出一些文本:

Kotlin 复制代码
fun myFunction() {
  println("I just got executed!")
}
Kotlin 复制代码
fun main() {
  myFunction() // 调用函数
}

// 输出 "I just got executed!"

2.多个参数

Kotlin 复制代码
fun myFunction(fname: String, age: Int) {
  println(fname + " is " + age)
}

fun main() {
  myFunction("John", 35)
  myFunction("Jane", 32)
  myFunction("George", 15)
}

// John is 35
// Jane is 32
// George is 15

3.返回值

Kotlin 复制代码
fun myFunction(x: Int): Int {
  return (x + 5)
}

fun main() {
  var result = myFunction(3)
  println(result)
}

// 8 (3 + 5)

返回值还有一个更短的语法。 您可以使用 **= 运算符代替 return**而无需指定返回类型。 Kotlin 足够聪明,可以自动找出它是什么:

Kotlin 复制代码
fun myFunction(x: Int, y: Int) = x + y

fun main() {
  var result = myFunction(3, 5)
  println(result)
}

// 8 (3 + 5)
相关推荐
奇树谦4 分钟前
LRU 缓存原理与 C++ 实践示例
开发语言·c++·缓存
toooooop86 分钟前
FastAdmin Hook 机制与插件错误透传:`$result` 之外的信封
开发语言·fastadmin
事圆则缓9 分钟前
Android 中的 Socket 和 WebSocket:从一条聊天消息看清区别
android·websocket·网络协议
小马过河R30 分钟前
EdgeOne深度解析:从原理、适用场景到COS接入的技术逻辑
java·开发语言·前端·spring·cos
多弗朗皮卡丘38 分钟前
C++ 红黑树
开发语言·c++·红黑树
ZoeLandia1 小时前
TypeScript 04:类型断言与类型守卫
开发语言·前端·typescript
geovindu1 小时前
rust: pool Pattern
开发语言·后端·设计模式·rust·对象池简写模式
jimy11 小时前
标准的动态类型定义与“多态”无关,非多态对象同样会出现动态类型不同于静态类型的情形
开发语言·c++
冬、不眠的夜1 小时前
Nuitka 将 python 程序编译成 exe 指南
开发语言·python
CVer儿1 小时前
起源1引擎相关知识点2--World Brush+func_detail
开发语言