李洪强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_变量和常量的更多相关文章

  1. 李洪强iOS开发Swift篇---11_变量&常量&元组

    李洪强iOS开发Swift篇---11_变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对 ...

  2. 李洪强iOS开发Swift篇---12_NSThread线程相关简单说明

    李洪强iOS开发Swift篇---12_NSThread线程相关简单说明 一 说明 1)关于多线程部分的理论知识和OC实现,在之前的博文中已经写明,所以这里不再说明. 2)该文仅仅简单讲解NSThre ...

  3. 李洪强iOS开发Swift篇—10_方法

    李洪强iOS开发Swift篇—10_方法 一.简单说明 跟其他面向对象语言一样,Swift中的方法可以分为2大类: (1)实例方法(Instance Methods) 在OC中,实例方法以减号(-)开 ...

  4. 李洪强iOS开发Swift篇—09_属性

    李洪强iOS开发Swift篇—09_属性 一.类的定义 Swift与Objective-C定义类的区别 Objective-C:一般需要2个文件,1个.h声明文件和1个.m实现文件 Swift:只需要 ...

  5. 李洪强iOS开发Swift篇—08_函数(2)

    李洪强iOS开发Swift篇—08_函数(2) 一.函数类型 函数类型也是数据类型的一种,它由形参类型和返回值类型组成,格式是 (形参类型列表) -> 返回值类型 1 func sum(num1 ...

  6. 李洪强iOS开发Swift篇—07_函数

    李洪强iOS开发Swift篇—07_函数 一.函数的定义 (1)函数的定义格式 1 func 函数名(形参列表) -> 返回值类型 { 2 // 函数体... 3 4 } (2)形参列表的格式 ...

  7. 李洪强iOS开发Swift篇—06_流程控制

    李洪强iOS开发Swift篇—06_流程控制 一.swift中的流程控制 Swift支持的流程结构如下: 循环结构:for.for-in.while.do-while 选择结构:if.switch 注 ...

  8. 李洪强iOS开发Swift篇—05_元组类型

    李洪强iOS开发Swift篇—05_元组类型 一.元组类型介绍 1.什么是元组类型 元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素” 示例: let po ...

  9. 李洪强iOS开发Swift篇—04_运算符

    李洪强iOS开发Swift篇—04_运算符 一.运算符 1.Swift所支持的部分运算符有以下一些 赋值运算符:= 复合赋值运算符:+=.-= 算术运算符:+.-.*./ 求余运算符:% 自增.自减运 ...

随机推荐

  1. addEventListener 用法

    addEventListener 用于注册事件处理程序,IE 中为 attachEvent,我们为什么讲 addEventListener 而不讲 attachEvent 呢?一来 attachEve ...

  2. .net+easyui--combobox

    一:预定义结构的 select 元素创建组合框(combobox)值固定写死 <select class="easyui-combobox" name="state ...

  3. Apache Avro 与 Thrift 比较

    http://www.tbdata.org/archives/1307 Avro和Thrift都是跨语言,基于二进制的高性能的通讯中间件. 它们都提供了数据序列化的功能和RPC服务. 总体功能上类似, ...

  4. NHibernate中的IQueryable和IQueryover

    今天在做一个小项目时,用到了NHibernate,使用了模糊查询(Like),在后台用IQueryable去接收Session.Query<T>()的查询结果. 代码如下: /// < ...

  5. CSS控制长文本内容显示(截取的地方用省略号代替)

    自动换行问题,正常字符的换行是比较合理的,而连续的数字和英文字符常常将容器撑大,下面介绍的是CSS如何实现处理的方法. 现实中经常出现一些内容比较长的文本,为了使整体布局美观,需要将文本内容控制在一行 ...

  6. [python]pep8编码规范

    一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车.3 类 ...

  7. spring学习笔记之spring框架本质

    Spring框架的本质是,开发者在Spring配置文件中使用XML元素进行配置,实际驱动Spring执行相应的代码: 使用<bean.../>元素,实际启动Spring执行无参或有参构造函 ...

  8. jQuery 源码分析2: jQuery.fn.init

    //jQuery.fn.intit 中使用到的外部变量: // 判断是否为HTML标签或#id rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w ...

  9. 01_JavaMail_05_创建邮件工具类MailUtils等方便发送邮件

    [工程截图] [代码实现] [Mail.java] package com.Higgin.Utils; import java.util.ArrayList; import java.util.Lis ...

  10. UVA 11991 Easy Problem from Rujia Liu?(vector map)

    Easy Problem from Rujia Liu? Though Rujia Liu usually sets hard problems for contests (for example, ...