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)
相关推荐
红尘伴蝶舞5 分钟前
从秒开优化到连环崩溃:深入剖析 ViewPager2 在常驻 DialogFragment 中的复用陷阱与自愈方案
android·kotlin
Evand J1 小时前
【MATLAB例程介绍】(17)永磁同步电机(PMSM)基于自适应无迹卡尔曼滤波(AUKF)的电流噪声在线估计。测量噪声协方差自适应与转速估计对比仿真
开发语言·matlab·卡尔曼滤波·无迹卡尔曼滤波·pmsm·电机滤波
BaiPeter2 小时前
ZPL文件预览
开发语言·c++
巫山老妖5 小时前
Android 应用架构演进:MVC / MVP / MVVM / MVI (2026)
android·android jetpack
YB13756 小时前
kotlin中闭包特性
kotlin
噢,我明白了8 小时前
JAVA中的一些基础应用知识点
java·开发语言
时间的拾荒人9 小时前
Redis 入门详解:核心特性、重要文件与全局命令实战
开发语言·redis·面试
木头左9 小时前
【架构设计】教育类 App 服务端化改造:AI 上移、题库分层与个人题库归属
android·架构设计·系统设计·后端开发·数据库设计
敲上瘾9 小时前
Qt Widgets入门:项目模板解析与Hello World
开发语言·数据库·c++·qt·ui·qt6.3
墨狂之逸才9 小时前
USB 的 HOST 和 DEVICE 到底有什么区别?ADB 调试应该选哪个?
android