Swift梗概

1.變量常量的定義
  • 定義變量*
var age = 10
age  = 10
  • 定義常量
let gender = "男" //普通的常量
let 黑 = "Db" //文字也可以
let  = "豬" //只有你想不到?jīng)]有他做不到
2.顯示標(biāo)注類型
var he1: Int = 13// 注意哦!!!冒號(hào)后面一定要加空格否則爆紅哦
var he2: Float = 30.2 
var he3: Double = 172.2

到底可以定義多少類型呢Int,Double,Float,NSString,Character,Bool

let her1 = true 
let her2: NSString  = "g"
let her3: Character = "g"http://不寫Character 默認(rèn)NSString,主意Character賦值是雙引號(hào)
3.創(chuàng)建數(shù)組可有多種方式
var array2 = ["12","234","67"]
var array3 = ["abc",23,35.2]
var array4: Array<Int> = [23] 自定數(shù)組里面的類型為Int
var array5: [String] = ["hello", "world"]
var array6: Array = [23]
var array7 = Array<Int>()```
*對(duì)數(shù)組的操作增刪改查*

  > * 增 

array1.append(78)
array1.insert(1000, atIndex: 1)
array1 += [23,56]
print(array1)

  > * 刪

array1.removeAtIndex(0)
array1.removeAll()

> * 查

print(array1[2])


#####4、創(chuàng)建字典的多種方式
>```var dict = [
   "key1" : "value1",
   "key2": 68,
    fause : "value3"
]
var dict2: Dictionary <Int,Int> = [
   23 : 567,
   56: 78
]
var dict3: Dictionary = [12.34 : 45.67]
var dict4 = [Int : Int]()
var dict5 = Dictionary<String , String>()```
> * 增加/修改'

dict5["key1"] = "value1"
dict5["key2"] = "value2"
dict5.updateValue("value3 ", forKey: "key1")
print(dict5)

> * 刪除

dict5.removeValueForKey("Key1")
print(dict5)

> * 查找

print(dict5["key2"])
//如果想要獲取字典里面所有的keys和Values,需要通過(guò)Array進(jìn)行強(qiáng)轉(zhuǎn)
let allKeys = Array(dict5.keys)
print(allKeys)
let allValues = Array(dict5.values)
print(allValues)


#####5、元組

var result = (404 , "Not Found")
result.1 = "Not Found"
var yanhau = (num : 1001 , name : "yanhau " , age: 101 , height: 168.0 weight : 118 ,des : "我怕誰(shuí)")
yanhau.age = 67
print(yuanhau)
var (num1,name1,age1,height1,weight1,des1) = yanhua
print(num1,yanhau.num,age1,height1)
//print中嵌套變量的使用"(變量名)"
porit("num : (num1) name : (name1) ")

#####6、循環(huán)

 ######(1) 分支語(yǔ)句

var score = 78
if score > 78
{
print("秀秀")
}
else if score > 60
{
print("過(guò)了")
}
else
{
print("不及格")
}
/*
主意點(diǎn):
1.必須有分支滿足情況
2.分支中一定有操作
3.不需要Break 若想貫穿,手動(dòng)添加關(guān)鍵字fallthrough
4.switch可以進(jìn)行范圍判斷
*/

######(2)switch語(yǔ)句

//(1)
switch score
{
case 90:
print("")
fallthrough//貫穿
case 100:
print("")
default:
print("")
}

//(2)
switch score
{
case 0..<60 //0到60
print("")
default:
print("")
}

//(3)switch score
{
case 0...60:
score += 20
print(score)
case var s where s< 80 && s > 70: //判斷
s += 20
print("")
default:
print("")
}

//4
let point = (13,45)
switch point
{
case(13,)://''代表忽略
print("")
fallthrough// 貫穿
default:
print("")
}

#####7、循環(huán)語(yǔ)句

repeat
{
print("執(zhí)行一次")
}while false

while false
{
print("ss")
}

for var i = 1; i<=10; i++
{
print(i)
}

//最常用
for abc in 0..<10
{
print(abc)
}

//數(shù)組
let names = ["shaung " , "shaung2","2shaung" , "shua2ng"]
for name in names
{
}

//字典
let names2 = [
"ju" : "de"
"shuang" : "shuang"
]

for(_,value) in names{
print("key : value: (value)")
}

#####8、函數(shù)

> * 無(wú)參數(shù)無(wú)返回值

func text1 () {
print(2)
}
text1()
func text2() -> Void{
}

> * 無(wú)參數(shù),有返回值

func text3() -> String{
return "string"
}
var str = text3()
print(str)

> * 有參數(shù),無(wú)返回值

func test4(a: Int ,b: loat){
print(a , b)
}

> * 有參數(shù),有返回值

func text5(name : String , gender: Character) -> String {
return "name : "+ name1 + "gender: " + String(gender)
}
var str1 = text5("ss" , gender: "$")
print(str1)

> * 有參數(shù),多個(gè)返回值

func test6(x: Int, y:Int) -> (Int, Int){
return (x+y , x- y)
}
var resultMax = test6(3 , y: 3)
print(resultMaX.0 , resultMax.1)
let (he , cha) = test6(3, y: 3)

> * 外部參數(shù)名、內(nèi)部參數(shù)名稱

func test7(buShuang suanShuang: String)
{
print(Suanshuang)
}
func test8(a: Int , _ b: Int)// 函數(shù)的第一個(gè)參數(shù)變量是默認(rèn)省略的,_ 可以省略函數(shù)參數(shù)
{
}
test8(19,68)

> * inout參數(shù)

func test9(inout a: Int)
{
a = 100
}
var yanhuaDage = 10
test9(&yanhuaDage)
print(yanhauDage)

> * 函數(shù)的嵌套使用

func test2(){
func test3(){
func test11(){
}
}
}


#####9、枚舉

func enum
enum Season : Int
{
case Spring // 0
case Summer = 1
case Autumn
case Winter
}

var s1 = Season.Spring
s1 = .Summer
print(s1)
print(s1.rawValue)

>* 注意:
*使用原始值創(chuàng)建對(duì)象時(shí)注意:!(optional)修飾的變量必須是有值的否則會(huì)崩*
*?(optional)修飾的變量可以為nil 輸出時(shí)為 optional (...)*

var s2 = Season(rawValue: 3)
print(s2! )

> * 與Switch配合

switch s2!
{
case .Spring:
print("")
case .Summer:
print("")
case .Autumn
print("")
case .Winter
print("")
}


#####10、結(jié)構(gòu)體

struct Person
{
//聲明屬性
var name: String
var age: Int

//聲明結(jié)構(gòu)體屬性
static var des : String?

//聲明方法

func sayHi()
{
print("name : (name) age: (age)")
}

//聲明結(jié)構(gòu)體方法
static func sayHello()
{
print("你好,我是好人,(self.des)")//在結(jié)構(gòu)體中在結(jié)構(gòu)體方法只能調(diào)用結(jié)構(gòu)體中的結(jié)構(gòu)體屬性,而不能調(diào)用結(jié)構(gòu)體中的屬性

}

}


* 創(chuàng)建結(jié)構(gòu)體對(duì)象

var p1 = Person(name : "dahuazi" , age: 38 )
p1.age = 49

print(p1.age)
p1.sayHi()
Person.des = "aaa"
Person.sayHello()

struct Student{

var name: String?
var gender: String?
var age: Int?
var hobby:String?
//構(gòu)造函數(shù)
init(name: String, age: Int)
{
self.name = name
}

init(name: String ,gender: String, age: Int, hobby: String)
{
self.name = name
self.gender = gender
self.age = age
self.hobby = hobby
}
init()
{
}

}
var ss = Student(name:"sss", age 1)
print(ss)
let ssl = Student()
print(ssl)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容