Swift学习
Swift
中文教程(一)基础数据类型
基础类型
虽然Swift是一个为开发iOS和OS X app设计的全新编程语言,但是Swift的很多特性还是跟和Objective-C相似。 Swift也提供了与C
Objective-C类似的基础数据类型,包括整形Int、浮点数Double和Float、布尔类型Bool以及字符串类型String。Swift还提供了两种更强大的基本集合数据类型,Array和Dictionary,更详细的内容可以参考:Collection Types。 跟C语言一样,Swift使用特的名称来定义和使用变量。同样,Swift中也可以定义常量,与C语言不同的是,Swift
中的常量更加强大,在
编程时使用常量能够让代码看起来更加安全和简洁。
除了常见的数据类型之外,Swift还集成了Objective-C中所没有的―元组‖类型,可以作为一个整体被传递。元组也可以成为一个函数的返回值,从而允许函数一次返回多个值。
Swif还提供了可选类型,用来处理一些未知的不存在的值。可选类型的意思是:这个值要么存在,并且等于x,要么根本不存在。可选类型类似于Objective-C中指针的nil值,但是nil只对类(class)有用,而可选类型对所有的类型都可用,并且更安全。可选类型是分Swift新特性的核心。
可选性类型只是
Swift
作为类型安全的编程语言的一个例子。
Swift
可以
帮助你更快地发现编码中的类型错误。
如果你的代码期望传递的参数类
型是
String
的,那么类型安全就会防止你错误地传递一个
Int
值。这样
就可以让编程人员在开发期更快地发现和修复问题。
常量和变量
常量和变量由一个特定名称来表示,
如
maximumNumberOfLoginAttempt
或者
welcomeMessage
。常量所指向的是一个特定类型的值,如数字
10
或者字符
‖hello‖
。变量的值可以根据需要不断修改,而常量的值是不能
够被二次修改的。
常量和变量的声明
常量和变量在使用前都需要声明,
在
Swift
中使用
let
关键词来声明一个
常量,
var
关键词声明一个变量。如下面例子
let maximumNumberOfLoginAttempts = 10
var currentLoginAttempt = 0
以上代码可以理解为:
声明一个叫
maximumNumberOfLoginAttempts
的值为
10
的常量。然后
声明一个变量
currentLoginAttempt
初始值为
0
。
在这个例子中,最大的登录尝试次数
10
是不变的,因此声明为常量。
而已经登录的尝试次数是可变的,
因此定义为变量。也可以在一行中声
明多个变量或常量,用
,
号分隔:
var x = 0.0, y = 0.0, z = 0.0
注:如果一个值在之后的代码中不会再变化,应该用
let
关键词将它声
明为常量。变量只用来存储会更改的值。
类型注解
在声明常量和变量时,
可以使用注解来注明该变量或常量的类型。
使用
:
号加空格加类型名在变量或常量名之后就可以完成类型注解。
下面的例
子就是声明了一个变量叫
welcomeMessage
,注解类型为字符串
String
:
var welcomeMessage: String
分号
―:‖
在这的作用就像是在说:
…
是
…
类型的,
因此上述代码可以理
解为:
声明一个叫
welcomeMessage
的变量,它的类型是
String
这个类型注解表明
welcomeMessage
变量能无误地存储任何字符串类型
的值,比如
welcomeMessage = ―hello‖
Swift学习的更多相关文章
- 【swift学习笔记】二.页面转跳数据回传
上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...
- 今天开始Swift学习
今天开始Swift学习 在此记录笔记 以备之后查阅! allenhuang
- iOS ---Swift学习与复习
swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...
- 12套swift学习资源分享
虽然objective-c编程语言在过去很长一段时间都是iOS应用开发的基础语言,且很多iOS开发者对其也深爱有佳,但是随着swift编程语言的问世,迅速发展为开发者追捧的语言.且今年伴随着swift ...
- Swift学习之常用UI的使用
Swift学习之常用UI的使用 最近笔者在开始学习苹果最新的编程语言,因为笔者认为,苹果既然出了这门语言就绝对不会放弃,除非苹果倒闭了(当然这里知识一个玩笑). 所以在不久的将来,swift绝对是iO ...
- [转]swift 学习资源 大集合
今天看到了一个swift的学习网站,里面收集了很多学习资源 [转自http://blog.csdn.net/sqc3375177/article/details/29206779] Swift 介绍 ...
- swift 学习资源 大集合
今天看到一个swift学习网站,其中我们收集了大量的学习资源 Swift 介绍 Swift 介绍 来自 Apple 官方 Swift 简单介绍 (@peng_gong) 一篇不错的中文简单介绍 [译] ...
- Swift学习笔记(一)搭配环境以及代码运行成功
原文:Swift学习笔记(一)搭配环境以及代码运行成功 1.Swift是啥? 百度去!度娘告诉你它是苹果最新推出的编程语言,比c,c++,objc要高效简单.能够开发ios,mac相关的app哦!是苹 ...
- swift学习:第一个swift程序
原文:swift学习:第一个swift程序 最近swift有点火,赶紧跟上学习.于是,个人第一个swift程序诞生了... 新建项目
- swift学习 - 计时器
swift学习之计时器 这个demo主要学习在swift中如何操作计时器(Timer),按钮(UIButton),文本(Label) 效果图: 代码 import UIKit class ViewCo ...
随机推荐
- Java语言的特点
一. 面向对象:其实是现实世界模型的自然延伸.现实世界中任何实体都可以看作是对象.对象之间通过消息相互作用.另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例.如果说传统的过程式 ...
- The method setCharacterEncoding(String) is undefined for the type HttpServletResponse 是什么原因?
response.setCharacterEncoding("gb2312"); 在Servlet2.3中是不行的,至少要2.4版本才可以,如果低于2.4版本,可以用如下办法: r ...
- ruby基础语法
首发:个人博客,更新&纠错&回复 学不同语言,常将它们的基础语法搞混,例如if后面有没有(),后面是then还是:还是{,结尾是end还是}. 这种事情毫无技术含量又毫无乐趣可言,但极 ...
- 161222、Bootstrap table 服务器端分页示例
bootstrap版本 为 3.X bootstrap-table.min.css bootstrap-table-zh-CN.min.js bootstrap-table.min.js 前端boot ...
- C# XmlSerializer实现序列化浅析
C# XmlSerializer类是实现序列化的一个类,那么关于C# XmlSerializer的学习我们要掌握怎么样的操作方法呢?那么这里向你详细介绍具体的操作细节情况. C# XmlSeriali ...
- [转]iOS学习之UINavigationController详解与使用(三)ToolBar
转载地址:http://blog.csdn.net/totogo2010/article/details/7682641 iOS学习之UINavigationController详解与使用(二)页面切 ...
- 简单练习题2编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次, 编写一个主类,在主类中测试Account类的功能
编写Java应用程序.首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”.“取款”和“余额查询”.其次, 编写一个主类,在主类中测试Account类的 ...
- 【Spring】对象后期处理,BeanPostProcessor
当我们使用Spring容器管理对象时,需要对对象进行一些后期处理时,比如数据处理.数据预加载,可以使用BeanPostProcessor接口. 简单演示它的用法. 定义扫描包,显示定义BeanPost ...
- mysql中查询语句中的一个知识点说明
1, 简单说明. select * from tb_name where 1[不为零即可];则会显示所有记录,select * from tb_name where 0;则不显示任何记录 假设数据库中 ...
- FreeSWITCH中文语音包
一.中文语音资源的获取 官方提供的资源:http://files.freeswitch.org/releases/sounds/ 自己录音 实在不行可以@我给你发一份. 二.中文资源的安装 英文资源的 ...