swift 学习笔记(23)-属性(计算属性)

前端之家收集整理的这篇文章主要介绍了swift 学习笔记(23)-属性(计算属性)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

计算属性,前面已经提到过一些.大致和 oc 中的 set 和get 方法差不多,读取和赋值等

  1. //点
  2.  
  3. struct Point{
  4. var x = 100
  5. var y = 100
  6. }
  7. var point = Point()
  8. print(point)
  9.  
  10.  
  11. // 宽高
  12. struct Size{
  13. var width = 100
  14. var height = 100
  15. }
  16. var size = Size()
  17. print(size)
  18.  
  19. //区域
  20. struct Rect{
  21. var size = Size()
  22. var origin = Point()
  23.  
  24. var center:Point{
  25.  
  26. // 只写 get 方法,就会是只读属性
  27. get {
  28. let x = rect.origin.x + rect.size.width/2
  29. let y = rect.origin.y + rect.size.height/2
  30. return Point(x: x,y: y )
  31. }
  32. //set 只是通过一种途径来修改属性的值
  33. set(newValue) {
  34.  
  35. let x = newValue.x - size.width/2
  36. let y = newValue.y - size.height/2
  37. origin = Point(x: x,y:y)
  38.  
  39.  
  40. }
  41. }
  42.  
  43.  
  44.  
  45. }
  46. var rect = Rect()
  47. print(rect)
  48.  
  49.  
  50.  
  51. //求区域中心点
  52.  
  53.  
  54.  
  55. var p = Point(x: 100,y: 100)
  56. var s = Size(width: 100,height: 100)
  57. var r = Rect(size: s,origin: p)
  58. print(r.center)
  59. r.center = Point(x: 10,y: 10)
  60. print(r.origin)

猜你在找的Swift相关文章