String是结构体,NSString是类,这是它们的根本区别. 在 Swift 中,结构体struct是值类型,String是结构体,所以也是值类型.值类型被赋予给一个变量.常量或者被传递给一个函数的时候,其值会被拷贝.这意味着它们的实例,以及实例中所包含的任何值类型属性,在代码中传递的时候都会被复制. 类class是引用类型,NSString是类,所以也是引用类型.与值类型不同,引用类型在被赋予到一个变量.常量或者被传递到一个函数时,其值不会被拷贝.因此,引用的是已存在的实例本身而不是其拷贝