Swift学习笔记12——下标(Subscripts)
来源:互联网 发布:淘宝上误点了确认收货 编辑:程序博客网 时间:2024/05/29 23:48
所谓的下标,就是[]。在Array和Dictionary的时候就已经接触过了。它其实算一种特殊的方法,利用下标,我们可以将属性的getter和setter写在一起。而且还可以提供另外的一些功能。
还记得String截串的时候无比麻烦吗?利用下标和扩展(Extension)封装后变得很简单。这个在讲到扩展的时候在写出来吧。
下标语法
subscript(index: Int) -> Int { get { // return an appropriate subscript value here } set(newValue) { // perform a suitable setting action here }}
当然可以和计算属性一样将setter删去,变为只读。
下面举一个使用例子。假设在买橙子。下标表示你要买多少斤,下标能返回总共价格。 当对下标赋值的时候,表示买那么多斤的时候总共花了多少钱。然后修改了橙子的单价.
下标不止一个变量,还可以有多个变量。变量也可以是不同的类型。
class Orange { var pricePerKg: Double = 3 subscript(kg: Double, str: String) -> Double { get{ print(str) return kg * pricePerKg } set{ print(str) self.pricePerKg = newValue / kg } }}var o = Orange()print("price of 10kg orange ",o[10,"buy 10 kg orange"])o[100,"buy 100kg orange"] = 250print("price per kg when buying 100kg orange ",o.pricePerKg)//打印//buy 10 kg orange//price of 10kg orange 30.0//buy 100kg orange//price per kg when buying 100kg orange 2.5
0 0
- Swift学习笔记12——下标(Subscripts)
- Swift学习笔记(15)--下标脚本(Subscripts)
- 对照Java学习Swift--下标(Subscripts)
- Swift 下标脚本(Subscripts)
- Swift下标(Subscripts)
- 下标—Swift学习笔记(十五)
- Swift学习笔记系列——(11)下标
- Swift学习笔记(16)——下标
- Swift 学校笔记---Subscripts
- Swift编程语言学习13——附属脚本(Subscripts)
- swift学习笔记(11)- 下标
- Swift-下标脚本和继承(Subscripts and Inheritance)(十一)
- 《从零开始学Swift》学习笔记(Day 35)——会使用下标吗?
- 《从零开始学Swift》学习笔记(Day 46)——下标重写
- The Swift Programming Language学习笔记(十三)——下标
- 《从零开始学Swift》学习笔记(Day 35)——会使用下标吗?
- 《从零开始学Swift》学习笔记(Day 46)——下标重写
- Swift 易忽略的笔记 6):Methods & Subscripts
- 【算法设计与数据结构】URAL 1323. Classmates
- C++头文件相互引用
- iOS调用系统照相机和闪光灯功能
- 利用InputStream和OutputStream流完成文件的断点续传,(原理)
- 数字字符串与数字相互转化-atoi函数和itoa函数的实现
- Swift学习笔记12——下标(Subscripts)
- 面向对象
- ACM_并查集
- PHP对象类型在内存中的分配
- 《深入理解Linux网络技术内幕》阅读笔记(十四)
- Android configuration使用 为什么监听事件onConfigurationChanged没有反应
- Sublime Text 3 的安装及注册
- leetcode Course Schedule
- Android Fragment 拦截 Back事件