• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

swift 第二课 基础知识-2

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 setter 和getter 的使用--> 适合计算使用

struct Point {
    var x = 0.0, y=0.0
}

struct Size {
    var width = 0.0, height = 0.0
    
}

struct Rect {
    var orgin = Point()
    var size = Size()
    
    //    lazy var 变量: 类型 = { 创建变量代码 }()
    //    懒加载的使用方法
    //    lazy var center : Point = {
    //        let x = self.orgin.x + self.size.width/2
    //        let y = self.orgin.y + self.size.height/2
    //
    //        return Point(x: x,y: y)
    //    }()
    
    
    
    mutating  func getCenter()-> (Double,Double){
        let x = self.orgin.x + self.size.width/2
        let y = self.orgin.y + self.size.height/2
       
        return (x,y)
    }
    
    
    var center:Point {
//        setter 和getter 适合 计算属性
        get {
            let x = self.orgin.x + self.size.width/2
            let y = self.orgin.y + self.size.height/2
           
            return Point(x :Double(x) , y : Double(y))
        }
        
        
        set {
            orgin.x = newValue.x - size.width
            orgin.y = newValue.y - size.height
        }
        
    }
}

外部调用 及显示结果

   var rect = Rect(orgin:Point(x:100,y:100),size:Size(width:100,height:100))
        
        print("rect 的数值 是\(rect)")
        print("rect 的 center 是 \(rect.getCenter())")
        
    
        rect.center = Point (x:10.0,y:10.0)
        
        print("rect 的 center 是 \(rect.center)")

结果

rect 的数值 是Rect(orgin: swift_003.Point(x: 100.0, y: 100.0), size: swift_003.Size(width: 100.0, height: 100.0))
rect 的 center 是 (150.0, 150.0)
rect 的 center 是 Point(x: -40.0, y: -40.0)

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Swift编程语言学习资料链接发布时间:2022-07-13
下一篇:
Swift中Tuple的比较发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap