李洪强iOS开发Swift篇—02_变量和常量
李洪强iOS开发Swift篇—02_变量和常量
一、语言的性能
(1)根据WWDC的展示
在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3.9倍
在实现 RC4加密算法时Objective-C的的性能是Python的127倍,Swift的性能是Python的220倍
有持怀疑态度的国外程序员,也对Objective-C和Swift的性能进行了测试 http://www.splasmata.com/?p=2798
(2)说明
目前的性能不是开发者最需要担心的问题
苹果已经全盘掌握了这个语言的方方面面:从底层编译框架到编译器再到语言设计
优化之路才刚刚开始,作为开发者,需要给这门新语言一点点耐心和信心
二、Swift与Objective-C代码格式对比
以添加一个按钮为例
(1)Objective-C语言
UIButton *btn = [[UIButton alloc] init];
btn.frame = CGRectMake(20, 20, 100, 100);
btn.backgroundColor = [UIColor blueColor];
[self.view addSubview:btn];
(2)Swift语言
var btn = UIButton()
btn.frame = CGRectMake(20, 20, 100, 100)
btn.backgroundColor = UIColor.blueColor()
self.view.addSubview(btn)
三、语法须知
1.Swift的源文件拓展名是.swift

2.Swift语言的2个不需要
(1)不需要编写main函数
从上往下按顺序执行,所以最前面的代码会被自动当做程序的入口
(2)不需要在每一条语句后面加上分号
let radius = 10 你喜欢的话,也可以加上 let radius = 10;
注意:有一种情况必须加分号:同一行代码上有多条语句时 let radius = 10; let radius2 = 15
(3)关于注释
1)单行注释
// 这是单行注释
2)多行注释
/* 这是多行注释
这是多行注释 */
3)多行注释可以嵌套多行注释
/* 外层注释
/* 内层注释
内层注释 */
外层注释 */
四、变量和常量
1.声明常量和变量
用let来声明常量 let radius = 10
用var来声明变量 var age = 20 或者是var x = 0.0, y = 0.0, z = 0.0
2.基本上可以用任何你喜欢的字符作为常量和变量名
(1)let π = 3.14159
(2)let 网址 = "http://ios.itcast.cn"
(3)let
李洪强iOS开发Swift篇—02_变量和常量的更多相关文章
- 李洪强iOS开发Swift篇---11_变量&常量&元组
李洪强iOS开发Swift篇---11_变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对 ...
- 李洪强iOS开发Swift篇---12_NSThread线程相关简单说明
李洪强iOS开发Swift篇---12_NSThread线程相关简单说明 一 说明 1)关于多线程部分的理论知识和OC实现,在之前的博文中已经写明,所以这里不再说明. 2)该文仅仅简单讲解NSThre ...
- 李洪强iOS开发Swift篇—10_方法
李洪强iOS开发Swift篇—10_方法 一.简单说明 跟其他面向对象语言一样,Swift中的方法可以分为2大类: (1)实例方法(Instance Methods) 在OC中,实例方法以减号(-)开 ...
- 李洪强iOS开发Swift篇—09_属性
李洪强iOS开发Swift篇—09_属性 一.类的定义 Swift与Objective-C定义类的区别 Objective-C:一般需要2个文件,1个.h声明文件和1个.m实现文件 Swift:只需要 ...
- 李洪强iOS开发Swift篇—08_函数(2)
李洪强iOS开发Swift篇—08_函数(2) 一.函数类型 函数类型也是数据类型的一种,它由形参类型和返回值类型组成,格式是 (形参类型列表) -> 返回值类型 1 func sum(num1 ...
- 李洪强iOS开发Swift篇—07_函数
李洪强iOS开发Swift篇—07_函数 一.函数的定义 (1)函数的定义格式 1 func 函数名(形参列表) -> 返回值类型 { 2 // 函数体... 3 4 } (2)形参列表的格式 ...
- 李洪强iOS开发Swift篇—06_流程控制
李洪强iOS开发Swift篇—06_流程控制 一.swift中的流程控制 Swift支持的流程结构如下: 循环结构:for.for-in.while.do-while 选择结构:if.switch 注 ...
- 李洪强iOS开发Swift篇—05_元组类型
李洪强iOS开发Swift篇—05_元组类型 一.元组类型介绍 1.什么是元组类型 元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素” 示例: let po ...
- 李洪强iOS开发Swift篇—04_运算符
李洪强iOS开发Swift篇—04_运算符 一.运算符 1.Swift所支持的部分运算符有以下一些 赋值运算符:= 复合赋值运算符:+=.-= 算术运算符:+.-.*./ 求余运算符:% 自增.自减运 ...
随机推荐
- maven项目转换成dynamic项目
由于maven项目不能直接运行调试需要转换成danamic web后,才能方便进行调试测试.以下是maven项目进行转换的过程 第一步,选择project faces,设置dynamic web版本. ...
- javascript实现可编辑的下拉框
曾经遇到过一个需求的情况是这样的,我们提供给用户的输入框的可选择项只能满足用户的大部分情况的选择,但是有时候会遇到一些用户想要输入的数据是下拉项中所没有的,而用户不希望改变下拉项为输入框模式,需要说如 ...
- js中的"=="与"==="的区别
"==": 1,如果两表达式的类型不同,则试图将它们转换为字符串.数字或 Boolean 量. 2,NaN 与包括其本身在内的任何值都不相等. 3,负零等于正零. 4,null 与 ...
- Scala应用函数
我们使用“_” 来代替单个的参数,实际上你也可以使用“_”来代替整个参数列表,比如说,你可以使用 print _ 来代替 println (_). someNumbers.foreach(printl ...
- what is delta simulation time
In digital logic simulation, a delta cycles are evaluation of expressions, followed by value updates ...
- Android开发——构建自定义组件
Android中,你的应用程序程序与View类组件有着一种固定的联系,例如按钮(Button). 文本框(TextView), 可编辑文本框(EditText), 列表框(ListView), 复选框 ...
- html 微信开发——微信授权
微信JS-SDK说明文档 链接地址:http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html 微信web开发:http: ...
- sublime中使用markdown
#为知笔记##为知笔记###为知笔记 1. 列表12. 列表23. 列表35. 顺序错了不用担心3. 写错的列表,会自动纠正 为知笔记---------------------- ```cpp int ...
- SqlServer优化博客网址
CareySon Sql Server MVP : http://www.cnblogs.com/CareySon/
- sublime_text编辑器下载安装使用
1.sublime_text下载 https://www.sublimetext.com/3 (选择相对应的版本) 2.通过package control安装插件 https://packagec ...