Swift是苹果新推出的用于苹果系列设备开发的语言,由于是发布时间不长,因此有些东西老在变化中,在百度或者google上搜索能找到很多相关的说明,但因为过时了,很多都是错误的。
Swift的函数,也包括类中的方法,在3.0版本中都统一了。简单来说就是:
1.有参数标签(argument label)的,在函数调用时必须包含参数标签;
如后面代码中getMyAge()函数的MyName就是一个参数标签。
如后面代码中的Person的构造函数及getInfo()方法;
3.如果参数标签为下横杠_,则函数调用时不允许包含参数名称。
少废话,上代码:
class Person{ var name:String var age:Int init(name:String,age:Int) { self.name = name self.age = age } func getInfo(name :String,age:Int) ->Int { return 90; } } func getMyAge(MyName name:String) ->Int { if name=="lsy"{ return 30 } else { return 0 } } func getSex(_ name:String) ->String { return "man"; } var myAge = getMyAge(MyName: "lsy"); var t = Person(name:"lsy",age:15); var sex = getSex("lsy"); let info = t.getInfo(name: "asdf",age: 15);函数getMyAge()这种定义方法其实和OC几乎是一样的,目前看来也是最稳定的方式。 个人认为,当一个语言还没有比较稳定时,贸然采用之用于开发大型项目,很可能给后期带来不少麻烦。当然,当一门新的技术或者语言出现时,进行及时的学习和跟踪倒是很有必要的。如有错误之处,欢迎留言指正。