老師的作業:
列舉可以同時有原始值和關聯值嗎??
應該是不可以的;
import uikit
import foundation
enum ***
enum birtherror : error
//person類
class person
}//建構函式
init?(firstname:string, lastname:string, ***:***, birthday:string, address:string)
self.firstname = firstname
self.lastname = lastname
self.*** = ***
self.address = addressdo}
catch birtherror.tooyoung
catch birtherror.tooold
catch
}//得到全名
func getname() -> string
//判斷是否同名
func samename(p:person)
else
}//判斷是否為相同例項(判斷是否為同乙個人是通過例項還是所有資訊?)
func sameperson(p:person)
else
}//對生日不合理的進行錯誤丟擲
func processbirth(birthday : string) throws
if birth > "2023年12月31日"
}//下標設定,讀取姓名
subscript(index : int) -> string}}
}func create()
create()
結果(如何同時設定原始值和關聯值??):
建立person
姓名為:汪美美,現生日日期是:2013年02月03日,年齡是:3歲,58號,屬性姓氏:汪,名稱為:美美,性別為:男
現在總共有1個人
建立person2
該person的生日日期"2019年12月25日"設定過大,建立失敗!
現在總共有1個人
建立person3
姓名為:汪美美,現生日日期是:2012年12月25日,年齡是:4歲,34號,屬性姓氏:汪,名稱為:美美,性別為:女
現在總共有2個人
該person的生日日期"1990年01月25日"設定過小,建立失敗!
現在總共有2個人
person與person3
兩人名字分別為:汪美美,汪美美
兩人同名!
person與person3
不是同乙個人!
ps:
當某變數為可選型別時,var
name :
string
!在有值時,若直接輸出,則是正常輸出;print
(name
)若在字串中輸出則帶有optional
在無值時,若直接輸出則程式出錯中斷;
若在字串中輸出則顯示為nil,但程式不會出錯;
**:var
name :
string!
//print(name)
print("
\(name)")
name
= "htt"
(name)
print("
\(name)")
結果:
nil
htt
optional("htt")
Swift3 0 類方法示例
jftools.swift test swift class method created by jeffasd on 17 3 14.import foundation 不繼承於其它類的類,稱之為基類。注意 swift 中的類並不是從乙個通用的基類繼承而來。如果你不為你定義的類指定乙個超類的話,這...
Swift 3 0基礎學習之下標
前言 類,結構體和列舉都可以定義下標,使用下標可以快速訪問集合,列表或者序列的資料成員元素。可以使用somearray index 來訪問array,使用somedictionary key 來訪問dictionary。乙個型別可以定義多個下標。定義乙個get set的下標 subscript in...
Swift 3 0基礎學習之閉包
前言 閉包是功能性自包含模組,可以在 中被傳遞和使用。swift 中的閉包與 c 和 objective c中的 blocks 以及其他一些程式語言中的 lambdas 比較相似。下面這篇文章就來詳細介紹了關於swift 3.0中的閉包,感興趣的一起來看看吧。開始閉包的書寫格式如下 如reverse...