声明和初始化变量的规则在两种语言中是相似的。
Kotlin支持两种基本类型的变量声明,val和var. val用于声明值不会改变的变量(类似于其他语言中的const变量),而var用于声明值可能随时间变化的变量:
val PI: Double = 3.14159265 var x: Double = 3.5 PI = 22/7 //非法- PI是val x = 4.5 // OK - x是var
Kotlin提供了自动类型推断:当你声明一个变量并同时初始化它时,Kotlin可以从你用来初始化它的值中推断出变量的类型。这使得变量声明的类型声明部分成为可选的。
val greeting = "Hello, " // greeting为字符串var name = "World" // name为字符串
Kotlin是一种强类型语言——一旦你为一个变量设置了类型,你就不能改变它了。
name = 42 //非法- name具有字符串类型
Swift支持两种基本类型的变量声明,let和var. let用于声明值不会改变的变量(类似于其他语言中的const变量),而var用于声明值可能随时间变化的变量:
let PI: Double = 3.14159265 var x: Double = 3.5 PI = 22/7 //非法- PI是const x = 4.5 // OK - x是var
Swift提供了自动类型推断:当你声明一个变量并同时初始化它时,Swift可以从你初始化它所用的值中推断出变量的类型。这使得变量声明的类型声明部分成为可选的。
让greeting = "Hello, " // greeting是字符串var name = "World" // name是字符串
Swift是一种强类型语言——一旦你为一个变量设置了类型,你就不能改变它了。
name = 42 //非法- name具有字符串类型
这两种语言都使构造字符串变得容易。
可以使用字符串模板表达式构造带有嵌入值的字符串。字符串中的模板表达式以$开头。
val strOne = "Area is $(PI*x*x)" val circumference = 2.0*PI*x val strOne = “ circumference is $circumference”
您可以使用+来连接字符串。
val result = strOne + "。+ str2
Swift使用字符串插值使用\()结构将值插入字符串中。
让strOne = “Area is \(PI*x*x)“让circumference = 2.0*PI*x让strOne = ” circumference is \(圆周)”
您可以使用+来连接字符串。
let result = strOne + "。+ str2
这两种语言都在其标准库中包含用于列表、集合和字典的类。
Kotlin列表有两种形式,List和mutableelist。List类型的大小是固定的,而mutableelist可以向其中添加或从中删除项目。
要从一组固定的数据项中创建List或MutableList,请使用适当的构造函数:
val people = listOf(“爱丽丝”,“贝蒂”,“查理”)val fruits = mutableelistof(“苹果”,“香蕉”,“樱桃”)val person = people[1] fruits.add(“葡萄”)fruits. removeat (2)
你可以用下面的语法创建一个空列表:
val animals = mutableelistof <String>() animals.add(“食蚁兽”)animals.add(“獾”)animals.add(“猫”)
集合类似于列表,不同之处在于它不能包含重复的内容,并且提供了高效的搜索方法。
val setOfPeople = setOf("Alice","Betty","Charlie")
集合也有可变和不可变两种类型。
Kotlin调用字典映射:
val pets = mapOf(“Alice”到“Dog”,“Betty”到“Cat”,“Charlie”到“Dog”)val charliesPet = pets[“Charlie”]
映射是不可变的。如果您希望能够向映射添加新条目或更新现有条目,则需要使用可变映射。
val cars = mutableMapOf(“Alice”到“Camry”,“Betty”到“F150”,“Charlie”到“Tesla”)汽车。把(“David”换成“Prius”)汽车["Betty"] = “Tundra”
在Swift中,你可以使用数组字面值来创建列表。
var fruits =[“苹果”,“香蕉”,“樱桃”]
Swift中的列表总是可变的。
fruits.append(“葡萄”)fruits.remove (: 2)
如果你想让列表不可变,用let声明它:
let people = ["Alice","Betty","Charlie"]
下面的语法允许你从数组字面量创建一个Set:
let settofpeople: Set<String> = ["Alice","Betty","Charlie"] let isBobPresent = setOfPeople.contains("Bob")
Swift使用这个语法来创建一个字典。
让宠物:[字符串:String] =[“爱丽丝”:“狗”,“贝蒂”:“猫”,“查理”:“狗”)
再一次,使用val代替let使字典可变:
val cars: [String:String] = ["Alice":"Camry","Betty":"F150","Charlie":"Tesla"] cars["David"] = "Prius" cars["Betty"] = “Tundra”