Swift中的计算属性是什么

2023-06-13

这篇文章主要为大家展示了“Swift中的计算属性是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Swift中的计算属性是什么”这篇文章吧。

一、计算属性的概念

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

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

        面向对象类型 类型名{

                存储属性...

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

                    get {

                        return 计算后属性值

}

                set 新属性值{

                    

}

}

        示例:

class Employee {
            var no:Int = 0
            var firstName:String = ""
            var lastName:String = ""
            var job:String?
            var salary:Double = 0
            lazy var dept:Department = Department()
            var fullname:String{
                get{
                return firstName+"."+"lastName"
}
                set(newFullName)系统默认给的变量名为newvalue{
                    var name = newFullName.componentsSeperatedByString(".")
                    firstName = name[0]
                    lastName = name[1]
}
}
}

二、只读计算属性

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

            示例:

class Employee {
            var no:Int = 0
            var firstName:String = ""
            var lastName:String = ""
            var job:String?
            var salary:Double = 0
            lazy var dept:Department = Department()
            var fullname:String{
                get{
                return firstName+"."+"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中的计算属性是什么.doc》

下载本文的Word格式文档,以方便收藏与打印。