Swift中数组和字典都是值类型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift中数组和字典都是值类型相关的知识,希望对你有一定的参考价值。
在 Swift 中,所有的基本类型:整数(Integer)、浮点数(floating-point)、布尔值(Boolean)、字符串(string)、数组(array)和字典(dictionary),都是值类型,并且在底层都是以结构体的形式所实现。类是引用类型。
1.测试数组是否为值类型
var testArray = [String]() testArray.append("AA") testArray.append("BB") testArray.append("CC") var testArray2 = testArray print("testArray:\\(testArray)") print("testArray2:\\(testArray2)") testArray2.removeAll() print("removeAll操作完成之后----") print("testArray:\\(testArray)") print("testArray2:\\(testArray2)")
结果截图:
2.测试字典是否为值类型
var testDic = [String: String]() testDic.updateValue("AA", forKey: "11") testDic.updateValue("BB", forKey: "22") testDic.updateValue("CC", forKey: "33") testDic.updateValue("DD", forKey: "44") print("testDic:\\(testDic)") var testDic2 = testDic print("testDic2:\\(testDic2)") testDic2.removeAll() print("removeAll操作完成之后-----") print("testDic2:\\(testDic2)") print("testDic:\\(testDic)")
结果截图:
3.测试类是否为引用类型
class Person { var name: String? var age: Int = 20 func sayHello() { print("Hello, My name is \\(name), My age is \\(age)") } } var p1 = Person() var p2 = p1 print("p1:\\(p1)") print("p2:\\(p2)") //sayHello print("sayHello:") p1.sayHello() p2.sayHello() //修改p1的名字 print("修改p1的name:") p1.name = "Zhang San" p1.sayHello() p2.sayHello()
测试截图:
以上是关于Swift中数组和字典都是值类型的主要内容,如果未能解决你的问题,请参考以下文章