结构体类型
基础数据类型都是结构体,如Int Float Bool等,是Swift自带的并且作为开发基础供开发者使用
在Swift中,结构体(Struct)和类类型(Class)非常相似,结构体是值类型,类是引用类型。
定义格式:
struct 名称 : 协议... { 属性和方法 }
如:
struct Sword {
var length:Int = 11
var name:String = "hello world"
func description() {
print("this is a \(name) sword, has length \(length)")
}
}
//var a:Sword = Sword()
var a:Sword = Sword(length: 5, name: "hello")
print(a)
Swift中对于结构体的命名规范:结构体名首字母必须大写,其他字母遵循首字母大写---驼峰规则
结构体中可以包含静态属性、静态方法(类类型当然也是可以的)
枚举类型
Swift中使用enum和case定义枚举类型
初始化使用:类型名.枚举值的方式
赋值使用:.枚举值的方式
enum weekday {
case Sun, Mon, Tue, Wed, Thr, Fri, Sat
}
var day1 = Weekday.Sun //初始化操作
day1 = .Fri //赋值
用于switch语句中:
switch day1 {
case .Sun:
print("Sunday.")
case .Mon:
print("Monday.")
default:
print("Other.")
}
Swift中枚举并不局限于C语言中的无符号整型,可以设置不同类型的关联值,如
enum AccountName {
case mailAccountName(String), commonAccountName(String)
case telAccountName(Int)
}
var n1 = AccountName.mailAccountName("anm@neusoft.com")
var n2 = AccountName.commonAccountName("anm")
var n3 = AccountName.telAccountName(2234567)
用于switch语句
switch n1 {
case .mailAccountName(let name):
print("邮箱名:\(name)")
case .commonAccountName(let name):
print("用户名:\(name)")
case .telAccountName(let name):
print("手机号:\(name)")
}
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站题目:Swift2.0(6)结构体类型&枚举类型-创新互联
文章出自:https://www.cdcxhl.com/article26/heicg.html
成都网站建设公司_创新互联,为您提供营销型网站建设、虚拟主机、微信小程序、云服务器、动态网站、网站策划
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联