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)
相关推荐
alexhilton18 小时前
Room Fts4:全文搜索替代 SQL LIKE
android·kotlin·android jetpack
hai_android1 天前
把 Android App 打包成系统应用(System App)
android·kotlin·android jetpack
JMchen1 天前
【Jetpack 内核实战 01】开篇:Jetpack 组件全家桶核心逻辑与专栏完整规划
android·kotlin·android jetpack
骑着蜗牛撵大象3271 天前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
WJ.Polar1 天前
Java封装、继承、多态
java·开发语言
摇滚侠1 天前
Java 中如何表示负数,有符号和无符号的区别,补码的计算规则,char byte short int long 的范围
java·开发语言
hunterandroid1 天前
Retrofit 网络请求的异常处理与重试策略实战
android
weixin_307779131 天前
C++代码实现MATLAB中的fitrtree函数功能
开发语言·c++·算法·matlab
sejinan1 天前
极致轻量与秒级起播:NativeWasmTv 开源硬核技术解析与升级版体验
android·开源·webview·tv
爱读书的小胖1 天前
Codewars:Rot13(C)解题分析
c语言·开发语言