初識(shí)Swift語(yǔ)言第一篇

Swift語(yǔ)言是喬布斯留給我們的一門新的編程語(yǔ)言 用于ios編程 ,相比于OC語(yǔ)言 它是對(duì)編程更加簡(jiǎn)單,靈活和有趣.下面我就寫(xiě)下我初學(xué)Swift做的一些筆記 比較雜但很實(shí)用

同C語(yǔ)言輸出相似 Swift輸出實(shí)用print

print("hellow world")

Swift 語(yǔ)以空格結(jié)尾 不需要分號(hào)

所有使用let定義一個(gè)常量 不能重新賦值

Swift支持隱式類型推斷 可以根據(jù)初值 自動(dòng)的判斷Swift的數(shù)據(jù)類型

print(a)
let b : String = "nihao"
print(b)
let c = 20.1```
#Swift不支持隱式類型轉(zhuǎn)換 不能讓倆個(gè)不一樣的數(shù)據(jù)類型做四則運(yùn)算
#Swift強(qiáng)轉(zhuǎn)的格式 數(shù)據(jù)類型(需要強(qiáng)轉(zhuǎn)的數(shù)據(jù))
```let d = Double(a) + c
print(d)
let e : String = "changsha"
let f : String = "yucu"```

#Swift里面支持運(yùn)算符的重載 會(huì)根據(jù)語(yǔ)境自動(dòng)判斷運(yùn)算符的含義
```let f2 = e + f
print(f2)```
#變量
```//Swift里使用var定義一個(gè)變量
var a = 10
//可以賦一個(gè)新值
a = 100
print(a)
//如果需要定義一個(gè)初始值為nil的變量的話,格式 : var + 變量名 + ":" + 變量類型? = nil
var b : String? = nil
b = "student"
print(b)```
#數(shù)組
```//Swift數(shù)組里面的數(shù)據(jù)類型必須是一樣的
//AnyObject Swift1.0版本
////NSObject Swift2.0版本
let array = [1, 2, 3, 4, 5, "a"]
//數(shù)據(jù)初始化的第二種方式 先指定數(shù)據(jù)類型
let array1 : [Int] = [1, 2, 3, 4]
var array2 = [1, 2, 3, 4, 5]
//數(shù)組的增刪改查
//插入一個(gè)數(shù)
array2.insert(8, atIndex: 2)
////插入一個(gè)數(shù)組
var array3 = [6, 7, 8, 9]
array2.insertContentsOf(array3, at: 2)
//數(shù)組的刪
//刪除數(shù)據(jù)的同時(shí) 保存內(nèi)存空間
//Swift里邊的BOOL是一個(gè)枚舉 只有true flase 倆種參數(shù)
array2.removeAll(keepCapacity: true)
//按區(qū)間刪除
let range : Range = Range (start: 1, end: 5)
array2.removeRange(range)
//數(shù)組的改
array2[1] = 10
var array4 = [11, 12, 13, 45]
//運(yùn)算符重載
var array5 = array4 + array3```
#字典
```//一個(gè)簡(jiǎn)單的字典
let array = [1, 2, 3, "1"]
let dictionary = [1 : 2, 3 : 4, "a" : "b"]
//Swift的字典里面 所有的key 所有的value都必須是同一種類型的
let dictionary1 : [Int : String] = [1 : "a", 2 : "b"]
//可變的字典
var dictionary3 = [1 : 2, 3 : 4, 5 : 6]
//為不存在的值做賦值操作 就是增加操作
dictionary3[7] = 8
print(dictionary3)
//修改對(duì)應(yīng)key的value值
dictionary3[1] = 100
print(dictionary3)
//刪除對(duì)應(yīng)key 的value值
dictionary3.removeValueForKey(1)
print(dictionary3)
//查找
print(dictionary3[3])```
#元組
```//使用 () 表示定義一個(gè)元組 元組里面沒(méi)有數(shù)據(jù)類型的概念
let type = ("羅峰", "DHM")
//訪問(wèn) 元組的第一張方式 直接通過(guò)下標(biāo)訪問(wèn)
print(type.0)
//訪問(wèn)元組的第二種方式 通過(guò)類訪問(wèn)
let type2 : (name : String, nicName : String) = type
print(type2.name)```
#循環(huán)結(jié)構(gòu)
```//for循環(huán)
let array = [1, 2, 3, 4, 5]
for var i = 0; i < array.count; i++ {
    print("i = \(i)")
}
//while循環(huán)Swift寫(xiě)法
var i = 0
while i < 10 {
    i++
    print(i)
}
//repeat while 和 do while一樣
//Swift1.0版本的時(shí)候叫做do while Swift2.0版本的時(shí)候叫做repeat while
repeat {
i++
print(i)
}while i < 10
//for in 循環(huán) Swift寫(xiě)法
let array2 = [1, 2, 3, 4, 5, 6]
for var a in array2 {
    print(a)
}```
#循環(huán)分支
```var timer : String? = nil
if timer != nil {
    print("timer存在")
} else {
    print("timer不存在")
}
let value = 0
switch value {
case 0:
    print(value)
case 1:
    print(value)
default:
    print("超了")
}
//0...10 表示的是 從0開(kāi)始到10結(jié)束 并且包含10
//0..<10 表示的是 從0開(kāi)始到10結(jié)束 并且不包含10
switch value {
case 0...10:
    print(value)
case 11...20:
    print(value)
default:
    print("超了")
}
let point = (10, 10)
switch point {
case (10, 10):
    print(point)
case (_, _):
    print(point)
}
//判讀
let value3 = 0
let value2 = 100
//switch value = 0 value < 10 成立
switch value3 {
case 0 where value2 < 10:
    print(value3)
case 0 where value2 > 10:
    print("正確")
default:
    print("錯(cuò)誤")
}```
//函數(shù)
```//無(wú)參無(wú)返回值函數(shù)
//func (關(guān)鍵字) test (函數(shù)名) "()" (參數(shù)列表) -> Void(返回值類型)
func test() -> Void {
    print("我是第一個(gè)函數(shù)")
}
test()
//無(wú)參有返回值
func test1() -> String {
    return "我是第二個(gè)參數(shù) 無(wú)參有返回值"
}
//接收函數(shù)的返回值
let str = test1()
print(test1())
//返回一個(gè)Int 類型的數(shù)組
func test2() -> Array<Int> {
    return [1, 2, 3]
}
print(test2())
//返回一個(gè)OC的數(shù)組
func test3() -> NSArray {
    return [1, 2, "a", "b"]
}
print(test3())
//有參無(wú)返回值的函數(shù)
//參數(shù)格式 參數(shù)名 + ":" + 參數(shù)類型
//-> Void可以省略
func test4(name : String, sex : String) -> Void {
    print("我叫\(zhòng)(name),我的性別是\(sex)")
}
test4("羅峰", sex: "未知")
//有參數(shù)有返回值
//參數(shù)是一個(gè)數(shù)組格式 : 參數(shù)名 + ":" + Array<數(shù)據(jù)類型>
func test5(phoneNumber : Array<Int>) {

}
//無(wú)參有多個(gè)返回值
func test6() -> (String, String) {
    return ("羅峰", "18")
}
//使用元組得出返回值
let type = test6()
print(type.0)
//有參有返回值
func test7(name : String, age : Int) -> (String, Int) {
    return (name, age)
}
//使用元組得出返回值
let type1 = test7("羅峰", age: 18)
print("我叫\(zhòng)(type.0), 今年\(type.1)歲")
//inout函數(shù)
// Swift函數(shù)里面的參數(shù) 默認(rèn)是使用let修飾的 是不可以更改的
func test8(inout number : Int) {
    number = 200
}
var a = 5
test8(&a)
print(a)
//函數(shù)嵌套
//第一層
func test10() {
    //第二層
    func test11() {
        //第三層
        func test12() {
            //第四層
            func test13() {
                //第五層
                func test14() {
                    //第六層
                    func test15() {
                        //...可以無(wú)限定義下去
                    }
                }
            }
        }
    }
}```
##好了 這篇就寫(xiě)這么多了 更多內(nèi)容將會(huì)在下篇博客書(shū)寫(xiě)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市糠亩,隨后出現(xiàn)的幾起案子束莫,更是在濱河造成了極大的恐慌凑术,老刑警劉巖淋纲,帶你破解...
    沈念sama閱讀 223,002評(píng)論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件匈挖,死亡現(xiàn)場(chǎng)離奇詭異稠氮,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)茉盏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門鉴未,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人鸠姨,你說(shuō)我怎么就攤上這事铜秆。” “怎么了讶迁?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,787評(píng)論 0 365
  • 文/不壞的土叔 我叫張陵连茧,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我巍糯,道長(zhǎng)啸驯,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,237評(píng)論 1 300
  • 正文 為了忘掉前任祟峦,我火速辦了婚禮坯汤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘搀愧。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,237評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布咱筛。 她就那樣靜靜地躺著搓幌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪迅箩。 梳的紋絲不亂的頭發(fā)上溉愁,一...
    開(kāi)封第一講書(shū)人閱讀 52,821評(píng)論 1 314
  • 那天,我揣著相機(jī)與錄音饲趋,去河邊找鬼拐揭。 笑死,一個(gè)胖子當(dāng)著我的面吹牛奕塑,可吹牛的內(nèi)容都是我干的堂污。 我是一名探鬼主播,決...
    沈念sama閱讀 41,236評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼龄砰,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼盟猖!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起换棚,我...
    開(kāi)封第一講書(shū)人閱讀 40,196評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤式镐,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后固蚤,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體娘汞,經(jīng)...
    沈念sama閱讀 46,716評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,794評(píng)論 3 343
  • 正文 我和宋清朗相戀三年夕玩,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了你弦。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,928評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡风秤,死狀恐怖鳖目,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情缤弦,我是刑警寧澤领迈,帶...
    沈念sama閱讀 36,583評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站碍沐,受9級(jí)特大地震影響狸捅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜累提,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,264評(píng)論 3 336
  • 文/蒙蒙 一尘喝、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧斋陪,春花似錦朽褪、人聲如沸置吓。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,755評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)衍锚。三九已至,卻和暖如春嗤堰,著一層夾襖步出監(jiān)牢的瞬間戴质,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,869評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工踢匣, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留告匠,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,378評(píng)論 3 379
  • 正文 我出身青樓离唬,卻偏偏與公主長(zhǎng)得像后专,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子男娄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,937評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容