基础语法就那老几样,很快可以说完

【常量、变量】

1.变量用 var,系统自动去判断类型,但变量再次赋值需保持数据类型一致

var  a=50

相信用过js/java/C#的,对这个var都不陌生

使用  var  变量名:数据类型  = 变量值

这种格式可以指定具体的数据类型,比如要指定float时

var  x:Float = 12.5

不这样写,直接var x=12.5,系统默认是double

2.常量用 let

let pi=3.14

常量也可以使用绝对数据类型来定义:

let x:Double=2

指定x为值是2的双精

混合类型常量运算时,需要注意类型转换:

 let label=“长度是:”
let width= 30
let widthLabel= label+String(width)

常量还可以在字符串中转义,使用“\()”

 let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit."

【数组、字典】

var shoppingList = ["catfish", "water", "tulips", "blue paint"]        
shoppingList[1] = "bottle of water"
var occupations = [
"Malcolm": "Captain",
"Kaylee": "Mechanic",
]
occupations["Jayne"] = "Public Relations"

创建空的数组或字典时,因为没法使用后面的值来判断所创建的类型,所以必须使用“初始化语法”

let emptyArray = String[]()
let enptyDictionary = Dictionary<String,Float>()

当变量的数据类型已知时,比如函数参数,可以使用[]或[:]将空的数组或字典赋值给变量

shoppingList = []

【流程控制语句】

基本所有语言都通用,还是那几个,只不过swift做的更绝,把小括号都给省了

let  individualScores = [67,50,2,74,33]
var teamScore = 0
for score in individualScores{
if score > 50{
teamScore +=3
}else {
teamScore +=1
}
}
println(teamScore)

将上面的代码在playground中

注意:

if后的条件判断表达式,不能像C那样什么都能放,swift的if后只接受布尔类型表达式(Boolean expression)

if 和 let 可以用来判断处理可能丢失的值,这种值成为“可选值”(optionals),使用“?”来定义,其中可能有值,也可能为nil

var opS:String?="Hello"
opS==nil var oN:String?="xiaobai"
var greeting="Hello!"
if let name=oN{
greeting="Hello,\(name)"
}
else
{
greeting="Hello,nobody"
}

switch 可以判断的不单单再是整形,可以使用任意类型作为条件判断;

而且当某个case执行完后,不会再进入下面的case,所以省去了break

在swift中,可以使用for-in来遍历字典数组:

let interestingNumbers=[
"Prime":[2,3,5,7,11,13]
"Fibonacci":[1,1,2,3,5,8]
"Square":[1,4,9,16,25]
]
var largest=0
for (kind,numbers) in interestingNumbers{
for number in numbers{
if number > largest{
largest = number
}
}
} println("lagest num:\(largest)")

for循环中,可以使用“..”符号,来指定循环变量的开始和终止,下面两个循环完全相同

 ".."不包含上限,“...”包含上限

[Swift系列]002-基础语法的更多相关文章

  1. openresty开发系列15--lua基础语法4表table和运算符

    openresty开发系列15--lua基础语法4表table和运算符 lua中的表table 一)table (表)Table 类型实现了一种抽象的"关联数组".即可用作数组,也 ...

  2. openresty开发系列14--lua基础语法3函数

    openresty开发系列14--lua基础语法3函数 一)function (函数) 有名函数: optional_function_scope function function_name( ar ...

  3. openresty开发系列13--lua基础语法2常用数据类型介绍

    openresty开发系列13--lua基础语法2常用数据类型介绍 一)boolean(布尔)布尔类型,可选值 true/false: Lua 中 nil 和 false 为"假" ...

  4. swift第一季基础语法

    同: 一.基础 同: 1常量和变量 2数据类型和数据类型转换 3别名 不同: 1可选类型optional 2BOOL类型 3元组类型 4断言Assertion 二.基本操作符 同: 1赋值和算术运算及 ...

  5. Python3 系列之 基础语法篇

    基础数据类型 整数 python 可以处理任意大小的整数 浮点数 python 可以处理任意大小的浮点数,但是需要注意的一点是:整数运算永远是精确的(除法也是精确的),而浮点数运算则可能会有四舍五入的 ...

  6. Swift 中的基础语法(二)

    1.Swift 中的函数 /// 函数的定义 /// /// - Parameters: /// - x: 形参 /// - y: 形参 /// - Returns: 返回值 func sum(x: ...

  7. VUE 入坑系列 一 基础语法

    html代码 <div id="app"> {{message}} </div> JavaScript代码 var vm = new Vue({ el: & ...

  8. swift3.0基础语法

    swift 3.0 基础语法 目录 01-变量和常量 02-运算符 03-可选项 04-条件语句 05-循环 06-字符串 07-元组 08-数组 09-字典 10-对象和类 11-枚举 12-属性 ...

  9. 一、vue基础语法(轻松入门vue)

    轻松入门vue系列 Vue基础语法 一.HelloWord 二.MVVM设计思想 三.指令 1. v-cloak 2. v-text 3. v-html 4. v-show 4. v-pre 5. v ...

随机推荐

  1. winform中的时间轴控件

    我现在做的项目遇到一个需求,就是有没有类似的控件: 我要实现的功能是:播放录像. 某个时间段内假如有2个录像,这个坐标表示的是时间,假如我现在拖动时间轴,拖到第一个录像里面开始播放第一个录像,拖到2个 ...

  2. HDU 2126 Buy the souvenirs (01背包,输出方案数)

    题意:给出t组数据 每组数据给出n和m,n代表商品个数,m代表你所拥有的钱,然后给出n个商品的价值 问你所能买到的最大件数,和对应的方案数.思路: 如果将物品的价格看做容量,将它的件数1看做价值的话, ...

  3. laravel笔记

    向视图中传递变量 使用with()方法 return view('articles.lists')->with('title',$title); 直接给view()传参数 return view ...

  4. jvm 之 国际酒店 8 月 19 一次full GC 导致的事故

    事故经过: 1  15:18收到短信报警:国际酒店调用OMS queryGorderOrderList方法失败:成单接口调用OMS获取token失败. 2  查看checkList发现15:18开始发 ...

  5. PYTHON发送邮件时,有的服务器不用密码认证的

    #!/usr/bin/python # coding: UTF-8 import smtplib from email.mime.text import MIMEText receivers_list ...

  6. C Primer Plus之结构和其他数据形式

    声明和初始化结构指针 声明结构化指针,例如: struct guy * him; 初始化结构指针(如果barney是一个guy类型的结构),例如: him = &barney; 注意:和数组不 ...

  7. Tomcat SSL 设置

    1. 先用如下命令生成tomcat 证书 cls rem please set the env JAVA_HOME before run this bat file SET JAVA_HOME=C:\ ...

  8. Task 使用 Task以及Task.Factory都是在.Net 4引用的。Task跟Thread很类似,通过下面例子可以看到。

    static public void ThreadMain() { Thread t1 = new Thread(TaskWorker); t1.Start(3); } static public v ...

  9. Shell练习 行列转换

    原题:https://leetcode.com/problems/transpose-file/Given a text file file.txt, transpose its content. Y ...

  10. kill -9 和kill

    kill pid 在kill进程的同时,会将包删掉该进程所在webapps目录下的文件夹,如iexpense文件夹 kill -9 pid 会强制删掉进程,但是不是删掉该进程所在webapps目录下的 ...