Swift计算属性

Swift计算属性,第1张

概述一、计算属性的概念                  计算属性本身不存储数据,而是从其它存储属性中计算得到数据,与存储属性不同,类、结构体、和枚举都可以定义计算属性         计算属性提供了一个getter来获取值,以及一个可选的setter来间接设置其它属性或变量的值,计算属性的语法如下:         面向对象类型 类型名{                 存储属性...       


一、计算属性的概念


计算属性本身不存储数据,而是从其它存储属性中计算得到数据,与存储属性不同,类、结构体、和枚举都可以定义计算属性


计算属性提供了一个getter来获取值,以及一个可选的setter来间接设置其它属性或变量的值,计算属性的语法如下:


面向对象类型 类型名{

存储属性...

var 计算属性名:属性数据类型{

get {

return 计算后属性值

}

set 新属性值{


}


}

示例:

classEmployee{varno:Int=0varfirstname:String=""varlastname:String=""varjob:String?varsalary:Double=0lazyvardept:Department=Department()varfullname:String{get{returnfirstname+"."+"lastname"}set(newFullname)系统默认给的变量名为newvalue{varname=newFullname.componentsSeperatedByString(".")firstname=name[0]lastname=name[1]}}}


二、只读计算属性

计算属性可以只有getter访问器,没有setter访问器,这就是只读计算属性


示例:


classEmployee{varno:Int=0varfirstname:String=""varlastname:String=""varjob:String?varsalary:Double=0lazyvardept:Department=Department()varfullname:String{get{returnfirstname+"."+"lastname"}}}



三、结构体和枚举中的计算属性


示例


struct Department {

let no:Int = 0

var name : String = "sales"


var fullname:String {

return "swift" + name + ".D"

}

}


var dept = Department()

println(dept.fullname)


enum WeekDays:String {

case Monday = "Mon"

case Tuesday = "Tue"

case Wednesday = "Wed"

case Thursday = "Thu"

case FrIDay = "Fri"

var message:String {

return "Today is"+self.rawValue

}

}

var day = WeekDays.Monday

println(day.message)

总结

以上是内存溢出为你收集整理的Swift计算属性全部内容,希望文章能够帮你解决Swift计算属性所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1091714.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存