The Swift Programming Language4

整型(Integers)

整型的全部都是数字而没有小数,例如42,-23,整型分有符号的(正数,零,负数)和无符号的(正数或者零)

 

Swift 提供基于8,16,32,64位的有符号和无符号的整型数。 这些整型遵行C语言的命名习惯,例如,一个8位的无符号整型使用UInt8,32位有符号的整型使用Int32,像Swift的所有数据类型一样,这些整型都是首字母大写。

 

整型边界(Integer Bounds)

 

我们能够访问每个整型类型的对小值和最大值,使用他们的min和max属性,如下:

let minValue = UInt8.min // minValue is equal to0,and is of type UInt8

let maxValue = UInt8.max // maxValue is equal to255,and is of type UInt8

 

这些属性的值具有对应的数据类型的大小(就像上面的UInt8的值),因此能够用在需要相应的数据类型的地方

 

整型(Int)

通常情况下,在我们的代码中不需要指定整型的大小,Swift提供了另外的一个整型类型Int,它的大小等于当前平台的一个字的大小(word size)

 

在32位的平台下,Int 大小就等同于Int32.

在64位的平台下,Int大小就等同于Int64

除非真的需要指定整型的大小。否则需要用整型的时候还是尽量使用Int,这增加了代码的一致性和兼容性。此外即使在32位平台,Int 能够存储在

-2,147,483,648到2,147,483,647之间的数字,对于大多数的整型数据的使用已经是很大了。

 

无符号整型(UInt)

 

Swift 也提供了一个无符号的整型类型UInt ,它的大小等于当前平台的一个字的大小(word size),如下

 

在32位平台下,UInt大小就等同于UInt32

在64位平台下,UInt大小就等同于UInt64

 

注意

仅仅当真的需要使用 具有当前平台字大小的无符号整型的时候才去使用UInt,否则即使知道被存储的值是非负的数值还是建议使用Int,一致性地使用Int用于整型避免了代码的转换操作,整型的数据类型(//猜测数据类型UInt32,UInt64等)猜测。详细表述在Type Safety and Type Inference

 

浮点数(Floating-Point Numbers)

 

 浮点数是包含有小数的数值,例如3.12159,0.1,-273.15

浮点数能够用来表示比整型范围大的数值。存储的值可以比Int的值更小,或者更大,Swift提供了两种有符号的浮点数类型

 

Double 代表64位的浮点数,当浮点数很大或者精度要求非常高时使用Double。

Float 代表32位的浮点数。当精度要求不到64位精度时使用Float

 

注意

Double 有至少15位十进制数的精度,而Float有至少6位十进制数的精度,根据数值范围和现实的需要,在程序代码中选择合适的浮点数值。

 

数据类型的安全和推测(Type Safety and TypeInference)

Swift 是个数据类型安全的编程语言,类型安全使我们非常清楚我们代码所使用的数据的类型。如果我们的代码希望字符串,那么就不能错误的传入整型。

 

由于Swift是类型安全的,所以当编译代码的时候,编译器会检查代码并标记任何不匹配类型位错误。这就使我们在开发阶段能尽可能早地发现错误并修改错误。

 

当我们在使用了不正确的数据类型时类型检查能使我们避免了错误。然而这并不是说我们必须指定每个常量或者变量的数据类型。如果不指定数据类型的话,Swift使用类型推断(type inference)得出合适的数据类型,类型推断让编译器在编译时自动地推断特定的表达式的类。仅仅通过检查所给的数据的值。

 

因为类型推测,Swift需要比C,OC或其他语言更少的数据类型的显式声明,因为指定数据类型的工作已经被做了。

 

当用初始值声明一个常量或者变量时,类型推测是非常有用的。通常情况下是在声明一个常量或者变量时,把一个语意的值(literal value)赋给它 。(语意的值是在代码中直接出现的值,例如42或3.14159)。 如果你给一个新的常量赋值42而又没有说明它是什么类型,那么Swift会推测你想给这个变量赋值一个整型,因为你初始化这个变量时给的数值看起来像一个整型,如下:

let meaningOfLife = 42

//meaningOfLife is inferred to be of type Int

 

相似地,如果你不指定浮点语意的数据类型,Swift推测你想创建一个Double,如下:

let pi = 3.14159

//pi is inferred to be of type Double

Swift 总是选择Doule(而不是Float),当推测一个浮点型时

 

当表达式包含整型和浮点型时,Swift把表达式的结果推测为Double型,如下:

let anotherPi = 3 + 0.14159

// anotherPi is also inferred to be of type Double

上面数值3语意没有显式的类型,由于另一部分出现浮点型,所以表达式的最终数据类型被推测为Double,

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
4S店客户管理小程序-毕业设计,基于微信小程序+SSM+MySql开发,源码+数据库+论文答辩+毕业论文+视频演示 社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。 本文从管理员、用户的功能要求出发,4S店客户管理系统中的功能模块主要是实现管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理,用户客户端:首页、车展、新闻头条、我的。门店客户端:首页、车展、新闻头条、我的经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与4S店客户管理系统实现的实际需求相结合,讨论了微信开发者技术与后台结合java语言和MySQL数据库开发4S店客户管理系统的使用。 关键字:4S店客户管理系统小程序 微信开发者 Java技术 MySQL数据库 软件的功能: 1、开发实现4S店客户管理系统的整个系统程序; 2、管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理等。 3、用户客户端:首页、车展、新闻头条、我的 4、门店客户端:首页、车展、新闻头条、我的等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流信息的查看及回复相应操作。
现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本微信小程序医院挂号预约系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此微信小程序医院挂号预约系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。微信小程序医院挂号预约系统有管理员,用户两个角色。管理员功能有个人中心,用户管理,医生信息管理,医院信息管理,科室信息管理,预约信息管理,预约取消管理,留言板,系统管理。微信小程序用户可以注册登录,查看医院信息,查看医生信息,查看公告资讯,在科室信息里面进行预约,也可以取消预约。微信小程序医院挂号预约系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值