博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Swift开发图解入门
阅读量:4308 次
发布时间:2019-06-06

本文共 2785 字,大约阅读时间需要 9 分钟。

《论语·卫灵公》有一段经典对白:『子贡问为仁。子曰:工欲善其事,必先利其器。

……』。

对于一个程序猿来说,好的工具不意味着一定能产生优质的代码。可是好的工具对提升开发效率的作用还是不言而喻的。想要用Swift做iOS开发。唯一可选的利器就是Xcode6了,童鞋们可以从以下的站点获得Xcode6的下载链接,在此页面中还可以找到Swift的官方书籍、例子代码和视频。

Xcode6下载:

接下来我们能够開始创建一个项目Swift01,如图所看到的:

以上看到的就是入门程序『Hello, World』。

接下来要做的就是能够通过构建整个项目或者直接通过执行项目并在控制台中查看结果,例如以下图所看到的:

好了,一切就这么简单。可是我们要讲的肯定不是Hello World那么简单,通过以下的代码先对Swift有个感性的认识吧。

import Foundationvar a:Int = 123   // 定义Int类型的变量alet b = 321       // 定义常量b通过类型判断为Intprintln("\(a) + \(b) = \(a + b)")   // 字符串中的\()能够放变量、常量、表达式                                    // 输出:123 + 321 = 444// 从1加到100求和var sum = 0for var i = 1; i <= 100; ++i {      // for循环    sum += i}println("SUM = \(sum)")             // 输出:SUM = 5050for 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.hourswitch 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]// 定义找出数组中最大和最小元素的函数// 声明函数的keyword是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]  // Bananavar myFruit2 = myDic[2001]  // nilif 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!") })

转载于:https://www.cnblogs.com/liguangsunls/p/7273682.html

你可能感兴趣的文章
根据图层名获取图层和图层序号
查看>>
规范性附录 属性值代码
查看>>
提取面狭长角
查看>>
Arcsde表空间自动增长
查看>>
Arcsde报ora-29861: 域索引标记为loading/failed/unusable错误
查看>>
记一次断电恢复ORA-01033错误
查看>>
C#修改JPG图片EXIF信息中的GPS信息
查看>>
从零开始的Docker ELK+Filebeat 6.4.0日志管理
查看>>
How it works(1) winston3源码阅读(A)
查看>>
How it works(2) autocannon源码阅读(A)
查看>>
How it works(3) Tilestrata源码阅读(A)
查看>>
How it works(12) Tileserver-GL源码阅读(A) 服务的初始化
查看>>
uni-app 全局变量的几种实现方式
查看>>
echarts 为例讲解 uni-app 如何引用 npm 第三方库
查看>>
uni-app跨页面、跨组件通讯
查看>>
springmvc-helloworld(idea)
查看>>
JDK下载(百度网盘)
查看>>
idea用得溜,代码才能码得快
查看>>
一篇掌握python魔法方法详解
查看>>
数据结构和算法5-非线性-树
查看>>