Swift開發圖解入門

cwf8 10年前發布 | 17K 次閱讀 Swift Apple Swift開發

《論語·衛靈公》有一段經典對白:『子貢問為仁。子曰:工欲善其事,必先利其器。……』。對 于一個程序員來說,好的工具不意味著一定能產生優質的代碼,但是好的工具對提升開發效率的作用還是不言而喻的。想要用Swift做iOS開發,唯一可選的 利器就是Xcode6了,童鞋們可以從下面的網站獲得Xcode6的下載鏈接,在此頁面中還能夠找到Swift的官方書籍、樣例代碼和視頻。

Xcode6下載:https://developer.apple.com/swift/resources/

接下來我們可以開始創建一個項目Swift01,如圖所示:








以上看到的就是入門程序『Hello, World』。接下來要做的就是可以通過構建整個項目或者直接通過運行項目并在控制臺中查看結果,如下圖所示:


好了,一切就這么簡單,但是我們要講的肯定不是Hello World那么簡單,通過下面的代碼先對Swift有個感性的認識吧。

    import Foundation

var a:Int = 123   // 定義Int類型的變量a  
let b = 321       // 定義常量b通過類型推斷為Int  

println("\(a) + \(b) = \(a + b)")   // 字符串中的\()可以放變量、常量、表達式  
                                    // 輸出:123 + 321 = 444  

// 從1加到100求和  
var sum = 0  
for var i = 1; i <= 100; ++i {      // for循環  
    sum += i  
}  
println("SUM = \(sum)")             // 輸出:SUM = 5050  

for ch in "hello" {                 // 對hello的每個字符進行循環  
    println(ch)  
}  

var randomAge = arc4random() % 50   // 調用Foundation中的函數產生隨機數  
print("You're \(randomAge) years-old! ")  
var myAge:UInt32 = 33;  
if randomAge > myAge {              // if-else分支結構  
     println("Older than me!")  
}  
else {  
    println("Younger than me!")  
}  

// 根據現在的系統時間顯示提示語  
// [吐槽]時間日期的操作在蘋果的編程語言里面真麻煩  
var currDate = NSDate()                                         // 創建時間日期對象  
var myCal = NSCalendar(calendarIdentifier:NSGregorianCalendar)  // 創建日歷對象(陽歷[格里高利歷])  
// 下面兩行代碼取出當前時間日期的小時部分  
var myComp:NSDateComponents = myCal.components(NSCalendarUnit.HourCalendarUnit, fromDate:currDate)  
var hour = myComp.hour  

switch hour {  
case 7, 8:  
    println("Enjoy your breakfast!")  
case 11, 12, 13:  
    println("Have a good lunch!")  
case 18, 19:  
    println("It's a good time for dinner!")  
default:  
    println("Do something to make yourself happy.")  
}  

var myArray:Int[] = [12, 35, 96, 47, 5, 23, 68]  
myArray += [32, 81]  
println(myArray)    // 輸出: [12, 35, 96, 47, 5, 23, 68, 32, 81]  

// 定義找出數組中最大和最小元素的函數  
// 聲明函數的關鍵字是func, findMaxAndMin是函數名  
// 函數名后的()中是參數列表, 其參數是Int型的數組,  
// 返回值是一個元組(包含多個數據的復合值), 包含兩個整數  
// 函數的返回值是在函數參數列表后的->之后指定其類型的  
func findMaxAndMin(x:Int[]) -> (Int, Int) {  
    var min:Int = x[0]  
    var max:Int = x[0]  
    for var index = 1; index < x.count; ++index {  
        if x[index] > max { max = x[index] }  
        else if x[index] < min { min = x[index] }  
    }  
    return (min, max)  
}  

println(findMaxAndMin(myArray))     //輸出: (5, 96)  

// 定義一個字典類型(鍵值對映射)  
var myDic = [1001:"Apple", 1002:"Banana", 1003:"Grape"]  
for (no, name) in myDic {  
    println("key = \(no), value = \(name)")  
}  
myDic[1003] = "Strawberry"  
println(myDic)         // 輸出: [1001: Apple, 1002: Banana, 1003: Strawberry]  
var myFruit1 = myDic[1002]  // Banana  
var myFruit2 = myDic[2001]  // nil  

if myFruit2 == nil {  
    println(myFruit1)  
}  
else {  
    println(myFruit2)  
}  

// 將函數作為函數的參數(Lambda函數)  
func repeat(count:Int, callback: () -> ()) {  
    for i in 0..count {  
        callback();  
    }  
}  

// 調用repeat函數輸出10次Hello, world!  
repeat(10, { println("Hello, world!") })  </pre> <br />

來自:http://blog.csdn.net/jackfrued/article/details/39370891

 本文由用戶 cwf8 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!