清风注解-Swift程序设计语言:Point6~10
目录索引
Point 6.
输出常量和变量
代码事例:
// 输出的内容会在最后换行
println("hello, world")
// 输出的内容最后不会换行
print("My name is Dash Geng")
注解:
- 可以用 println 或 print 函数来输出当前常量或变量的值。
- println 和 print 是用来输出的全局函数(内置函数)。
- println 函数输出的内容会在最后换行。
- print 函数输出的内容最后不会换行。
- Swift 用字符串插值的方式把常量名或者变量名当做占位符加入到长字符串中,代码执行时会用当前常量或变量的值替换这些占位符。
Point 7.
Swift 代码注释
代码事例:
/* Swift的注释风格包括多行注释(/* */)和单行注释(//)
/*
多行注释中可以嵌套多行注释
*/
// 多行注释中也可以嵌套单行注释
*/
注解:
- 和其他语言一样,Swift 编译器在编译代码时,会自动忽略注释部分。
- Swift 有单行注释和多行注释两种注释风格。
- 单行注释以双正斜杠(
//)作为起始标记。 - 多行注释的起始标记为单个正斜杠后跟随一个星号(
/*),终止标记为一个星号后跟随单个正斜杠(*/)。 - Swift 的多行注释中可以包含单行注释,也可以嵌套多行注释。
Point 8.
整数类型
代码事例:
// 有符号整数
var temperature : Int8 = -
var height : Int16 =
var monthlyExpenditure : Int32 = -
var landArea : Int64 = 9_600_000
// 无符号整数
var age : UInt8 =
var years : UInt16 =
var moonDistance : UInt32 =
var globalPopulation : UInt64 = 7_000_000_000
注解:
- 整数就是没有小数部分的数字。
- Swift 提供了 8,16,32 和 64 位的有符号和无符号整数类型。
- 有符号整数类型:Int,Int8,Int16,Int32,Int64。
- 无符号整数类型:UInt,UInt8,UInt16,UInt32,UInt64。
- Swift 的所有数据类型都采用大写命名法。
- 你可以访问不同整数类型的 min 和 max 属性来获取对应类型的最大值和最小值。
// 16位有符号数的最小值:-32768
let minInt16Num : Int16 = Int16.min
// 16位无符号数的最小值:0
let minUInt16Num : UInt16 = UInt16.min
// 32位有符号整数的最大值:2_147_483_647
let maxInt32Num : Int32 = Int32.max
// 32位无符号整数的最大值:4_294_967_295
let maxUInt32Num : UInt32 = UInt32.max- Swift 提供了一个特殊的整数类型 Int,长度与当前平台的原生字长相同。在 32 位平台上,Int 和 Int32 长度相同;在 64 位平台上,Int 和 Int64 长度相同。
/* Int类型的长度取决于当前CPU字长,本机字长64位,
因此maxIntNum为:9_223_372_036_854_775_807
*/
let maxIntNum : Int = Int.max- Swift 也提供了一个特殊的无符号类型 UInt,长度与当前平台的原生字长相同。在 32 位平台上,UInt 和 UInt32 长度相同;在 64 位平台上,UInt 和 UInt64 长度相同。
/* UInt类型的长度取决于当前CPU字长,本机字长64位,
因此maxUIntNum为:18_446_744_073_709_551_615
*/
let maxUIntNum : UInt = UInt.max- 尽量不要使用 UInt,而是统一使用 Int,这样可以提高代码的可复用性,避免不同类型数字之间的转换,并且匹配数字的类型推断。
Point 9.
浮点数类型
代码事例:
var floatNum : Float = 1.12345678901234567890
var float32Num :Float32 = 1.12345678901234567890
var float64Num : Float64 = 1.12345678901234567890
var float80Num : Float80 = 1.12345678901234567890
var doubleNum : Double = 1.12345678901234567890
// floatNum的值为:1.123_456_835_746_77
println("\(floatNum)")
// float32Num的值为:1.123_456_835_746_77
println("\(float32Num)")
// float64Num的值为:1.123_456_789_012_35
println("\(float64Num)")
// float80Num的值为:1.123_456_789_012_35
println("\(float80Num)")
// doubleNum的值为:1.123_456_789_012_35
println("\(doubleNum)")
注解:
- 浮点数是有小数部分的数字。
- 浮点类型比整数类型表示的范围更大,可以存储比 Int 类型更大或者更小的数字。
- Swift 提供了 Double 和 Float 两种有符号浮点数类型。
- Float 表示 32 位浮点数,Double 表示 64 位浮点数。
- Float 精确只有 6 位数字,Double 精确度很高,至少有 15 位数字。
- 实际上 Swift 有五种可选的有符号浮点数类型:Float,Float32,Float64,Float80,Double。
- 在 64 位处理器上,Float 和 Float32 的取值范围相同,Float64,Float80,Double 这三种类型的取值范围相同。
Point 10.
类型安全和类型推断
代码事例:
// 常量或变量的赋值操作会触发类型推断。
// 类型推断把正整数推断为Int类型
var index =
// 类型推断把浮点数推断为Double类型
var pai = 3.14
注解:
- Swift 是一个类型安全的语言。类型安全的语言可以让你清楚地知道代码要处理的值的类型。
- 由于 Swift 是类型安全的,所以它会在编译代码时进行类型检查,并把不匹配的类型标记为错误。
- 如果没有显式指定类型,Swift 会使用类型推断来选择合适的类型。
- 在声明常量或者变量的时候,赋给它们一个字面量即可触发类型推断。
- 类型推断会把正整数推断为 Int 类型,把浮点数推断为 Double 类型。
作者:清风抚柳 (DashGeng)
出处:http://www.cnblogs.com/dashgeng/
清风注解-Swift程序设计语言:Point6~10的更多相关文章
- 清风注解-Swift程序设计语言
前言 Apple 发布了全新的 Swift 程序设计语言,用来开发 iOS 和 OS X 平台的应用程序.其目的不言而喻:就是为了给老迈的 Objective-C 一个合适接班人!因此,不难预见,未来 ...
- 清风注解-Swift程序设计语言:Point11~15
目录索引 清风注解-Swift程序设计语言 Point 11. 数值型字面量 代码事例: let decimalInteger = // 十进制的17 let binaryInteger = 0b10 ...
- 清风注解-Swift程序设计语言:Point1~5
目录索引 清风注解-Swift程序设计语言 Point 1. Swift 风格的"Hello, world" 代码事例: println("Hello, world&qu ...
- 《Swift程序设计语言》中国翻译和学习笔记page23
·<The Swift Programming Language>中文翻译及读书笔记,附件中为英文原版教程 因21页之前内容和技术关系不大,不做翻译整理,从第21页開始 · 页 1 本页主 ...
- 20145206《Java程序设计》第10周学习总结
20145206 <Java程序设计>第10周学习总结 博客学习内容总结 什么是网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定 ...
- 20145334 《Java程序设计》第10周学习总结
20145334 <Java程序设计>第10周学习总结 教材学习内容总结 一.网络编程 •网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入 ...
- 20145320 《Java程序设计》第10周学习总结
20145320 <Java程序设计>第10周学习总结 教材学习内容总结 网络编程 计算机网络概述 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输. 按照计算机网络的定义 ...
- 20145225《Java程序设计》 第10周学习总结
20145225<Java程序设计> 第10周学习总结 教材学习内容总结 一.网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据: 程序员所作的事情就是把数据发送到指定 ...
- 20145208 《Java程序设计》第10周学习总结
20145208 <Java程序设计>第10周学习总结 教材学习内容总结 了解JAVA网络编程的基础知识 这一部分知识的学习在我的实验中有叙述实验五 补充内容: 在现有的网络中,网络通讯的 ...
随机推荐
- Django模板-分离的模板
上一篇Django模板-在视图中使用模板最后的问题,我们需要把数据和展现分离开. 你可能首先考虑把模板保存在文件系统的某个位置并用 Python 内建的文件操作函数来读取文件内容. 假设文件保存在 E ...
- Binder连接池
一.为什么需要Binder线程池 产生原因:因为当有多个不同的业务块都要使用AIDL来进行通信,则需要创建多个Service,每创建一个Service就需要消耗系统资源. 解决思路:将所有的AIDL放 ...
- meteor学习
meteor学习 描述:是一套完整的用于开发现代化跨平台实时应用的整体解决方案 不是IDE(集成开发环境) 不是API接口 不是前端框架 不是后端框架 包含 命令行工具 meteor command ...
- Python urllib和urllib2模块学习(三)
build_opener()详解: 1.urllib2.urlopen()函数不支持验证.cookie或者其它HTTP高级功能,要支持这些功能,必须使用build_opener()函数创建自定这句话的 ...
- C语言入门(19)——C语言的编码风格
代码风格好不好就像字写得好不好看一样,如果一个公司招聘秘书,肯定不要字写得难看的,同理,代码风格糟糕的程序员肯定也是不称职的.虽然编译器不会挑剔难看的代码,照样能编译通过,但是和你一个团队进行协作的其 ...
- OpenStreetMap(OSM) JMap Viewer(Java swing map)
This article from:http://wiki.openstreetmap.org/wiki/JMapViewer JMapViewer is a java component which ...
- Python学习笔记4-如何快速的学会一个Python的模块、方法、关键字
想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding: ...
- 调magento自定义模板发邮件
1. 设置邮件模板 <global> <template> <email> <custom_email_template1 module="Samp ...
- MVC中使用AuthorizeAttribute做身份验证操作【转】
http://blog.csdn.net/try530/article/details/7782704 代码顺序为:OnAuthorization-->AuthorizeCore-->Ha ...
- 关于在storyboard拖按钮控件,手动设置代码不成功的问题
首先,在 storyboard 中拖拽一个按钮控件.设置好约束条件