欢迎来到天天文库
浏览记录
ID:43841109
大小:1.44 MB
页数:117页
时间:2019-10-15
《Swift编程语言中文教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、关于SwiftSwift是一门用于开发iOS和OSX应用程序的新语言,基于C和Object-C,但是没有C兼容性的限制。Swift采用安全的编程模式,并增加了许多新的现代模式,让编程更加的容易、灵活,让编程更加有乐趣。Swift被目前成熟并很受欢迎的Cocoa和CocoaTouch支持,是重新思考如何做软件开发的时候了。Swift已经经过多年的酝酿。苹果公司通过改进现有的编译器,调试器和基本框架奠定了Swift的基础。我们通过自动引用计数(ARC)简化了存储管理。我们的框架协议栈,建立在坚实的基础框架和Cocoa之上,并且更加新潮和标准化。Objective-C本生已经实现模块
2、化,允许框架使用新的编程语言。由于这个基础,我们现在可以引入新的语言开发未来的苹果软件。Objective-C的程序员对Swift会很容易上手,因为它采用Objective-C相同的命名规则以及Objective-C的动态对象模型。Swift可以无缝的调用Cocoa框架,并且可以和Objective-C混编。Swift引入了许多新的特性,统一了编程语言程序和面向对象部分。Swift对于新接触的程序员也相当友好。它是第一个工业品质系统的编程语言,Swift编写的程序可以及时看到效果,并且是一门很有趣的脚本语言。Swift无需写完代码后再编译运行。Swift结合了现代编程语言的思维
3、,广泛的结合苹果工程师的智慧。Swift的编译器正对性能进行了优化,扩展等无需其它的开销。它的设计从“hello,word”扩展到整个操作系统。所有的一切值得开发者和苹果公司对Swift的投资。Swift是一种优雅的方式来编写iOS和OSX应用程序,会持续加入新的功能和特性。我们对Swift充满信心。我们迫不及待的想看到您用Swift编写的有趣App。开始Swift之旅依据传统,一门新语言的第一个程序是在屏幕上打印出“HelloWorld”。用Swift可以在一行代码中实现:println("Hello,world");如果你曾经写过C或则Objective-C,这行Swift
4、语法你看起来或许非常熟悉,这行代码已经是一个完整的程序。你不需要导入一个单独的库来处理类似输入/输出、字符串处理问题。全局范围内写的代码被作为整个程序的入口,因此你不需要一个main函数。同样不需要在语句结尾写分号(;)。本节文章展示Swift如何完成各种编程任务,给你足够的信息来学习Swift。如果在学习本节时候你有不明白的地方不用担心,整个教程的其余部分会有一个详细的说明。注意:为获得最佳体验,请下载并在Xcode中打开源码。可以编辑的代码,并立即看到结果。目录隐藏1简单的赋值2流程控制2.1if2.2switch2.3for-in2.4while3函数与闭包4类和对
5、象5枚举与结构6接口和扩展7泛型简单的赋值使用let来定义常量,var定义变量。常量的值无需在编译时指定,但是至少要赋值一次。这意味着你可以使用常量来命名一个值,你发现只需一次定义,多个地方使用。varmyVariable=42myVariable=50letmyConstant=42一个常量或变量必须与赋值时拥有相同的类型。因此你不用严格定义类型。提供一个值就可以创建常量或变量,并让编译器推断其类型。在上面例子中,编译其会推断myVariable是一个整数类型,因为其初始化值就是个整数。如果初始化值没有提供足够的信息(或没有初始化值),可以在变量名后写类型,以冒号分隔。l
6、etimplicitInteger=70letimplicitDouble=70.0letexplicitDouble:Double=70练习:创建一个常量,类型为Float,值为4值永远不会隐式转换为另一种类型。如果你需要把一个值转换到不同类型,需要明确的构造一个所需类型的实例。letlabel="Thewidthis"letwidth=94letwidthLabel=label+String(width)练习:尝试删除最后一行的String转换,你会得到什么错误?还有更简单的方法实现在字符串中包含值:以小括号来写值,并用反斜线()放在小括号之前。例如:letapples=
7、3letoranges=5letappleSummary="Ihave(apples)apples."letfruitSummary="Ihave(apples+oranges)piecesoffruit."练习:字符串中使用()来包含一个浮点数,并包含某人的名字创建一个数组和字典使用方括号"[]",访问其元素则是通过方括号中的索引或键。varshoppingList=["catfish","water","tulips","bluepaint"]shoppingList[1]="bo
此文档下载收益归作者所有