p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #008400 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; min-height: 16.0px }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #d12f1b }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #4f8187 }
p.p6 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "PingFang SC"; color: #008400 }
p.p7 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #bb2ca2 }
p.p8 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #3d1d81 }
span.s1 { }
span.s2 { color: #bb2ca2 }
span.s3 { color: #000000 }
span.s4 { color: #272ad8 }
span.s5 { font: 14.0px Menlo }
span.s6 { color: #4f8187 }
span.s7 { color: #3d1d81 }
span.s8 { font: 14.0px "PingFang SC" }
span.s9 { color: #703daa }
span.s10 { color: #d12f1b }

//: Playground - noun: a place where people can play

import UIKit

var str = "Hello, playground"

let individualScores = [75, 43, 103, 87, 12];

var teamScore = 0;

for score in individualScores {

//    if 里的条件判断 不用加()

if score > 50{

teamScore += 3;

} else{

teamScore += 1;

}

}

print(teamScore);

//? 可选值 可为nil

//你可以一起使用 if 和 let 来处理值缺失的情况。这些值可由可选值来代表。一个可选的值是一个具体的值或者 是 nil 以表示值缺失。在类型后面加一个问号来标记这个变量的值是可选的。

var optionalString : String? = "Hello";

print(optionalString == nil)

var optionalName:String? = nil;

var greeting = "Hello";

if let name = optionalName {

greeting = "Hello, \(name)";

} else if(optionalName == nil){

greeting = "bye"

}

//?? 默认值

//如果变量的可选值是 nil ,条件会判断为 false ,大括号中的代码会被跳过。如果不是 nil ,会将值赋给 let 后 面的常量,这样代码块中就可以使用这个值了。

//另一种处理可选值的方法是通过使用 ?? 操作符来提供一个默认值。如果可选值缺失的话,可以使用默认值来代 替。

let nickName : String? = nil;

let fullName : String = "John Appleseed";

let informalGreetin = "Hi \(nickName ?? fullName)";

//switch 支持任意类型的数据以及各种比较操作——不仅仅是整数以及测试相等。

let vegetable = "red pepper";

switch vegetable {

case "celery":

print("Add some raisins and make ants on a log.");

case "cucumber","watercress":

print("That would make a good tea sandwich.");

case let x where x.hasSuffix("pepper"):

print("Is it a spicy \(x)");

default:

print("Everyting tastes good in soup");

}

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;

var largestKind : String? = nil;

//你可以使用 for-in 来遍历字典,需要两个变量来表示每个键值对。字典是一个无序的集合,所以他们的键和值以 任意顺序迭代结束。

for (kind, numbers) in interestingNumbers {

for number in numbers{

if number > largest {

largest = number;

largestKind = kind;

}

}

}

var n = 2;

while n < 100 {

n = n*2;

}

print(n)

var m = 2;

repeat{

m = m*2;

}while m < 100

print(m)

var firstForLoop = 0

//..< 不包含上界 ...包含上界

//可以在循环中使用 ..< 来表示范围,也可以使用传统的写法,两者是等价的:

for i in 0...4 {

firstForLoop += i;

}

print(firstForLoop)

var secondForLoop = 0;

for var i = 0; i < 4; ++i {

secondForLoop += i;

}

print(secondForLoop);

swift 2.x学习笔记(二)的更多相关文章

  1. WPF的Binding学习笔记(二)

    原文: http://www.cnblogs.com/pasoraku/archive/2012/10/25/2738428.htmlWPF的Binding学习笔记(二) 上次学了点点Binding的 ...

  2. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  3. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  4. JMX学习笔记(二)-Notification

    Notification通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知. 这里写 ...

  5. java之jvm学习笔记二(类装载器的体系结构)

    java的class只在需要的时候才内转载入内存,并由java虚拟机的执行引擎来执行,而执行引擎从总的来说主要的执行方式分为四种, 第一种,一次性解释代码,也就是当字节码转载到内存后,每次需要都会重新 ...

  6. Java IO学习笔记二

    Java IO学习笔记二 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输 ...

  7. 《SQL必知必会》学习笔记二)

    <SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语 ...

  8. NumPy学习笔记 二

    NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  9. Learning ROS for Robotics Programming Second Edition学习笔记(二) indigo tools

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

随机推荐

  1. 分享Kali Linux 2016.2第47周镜像

    分享Kali Linux 2016.2第47周镜像Kali Linux官方于11月20日发布Kali Linux 2016.2的第47周镜像.这次发布仍然包含11个镜像文件.其中,不仅包含Gnome桌 ...

  2. Codeforces Edu3 E. Minimum spanning tree for each edge

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

  3. java代码获知该方法被哪个类、哪个方法、在哪一行调用

    public class TestMain { public static void main(String[] args){ hello(); } public static void hello( ...

  4. python 代码片段17

    #coding=utf-8 try: get_mutex() do_some_stuff() except (IndexError,KeyError,AttributeError),e: log(&q ...

  5. jenkins 的 ProcessTreeKiller----无法启动子进程的解决办法

    参考: http://alanland.iteye.com/blog/2047244 http://scmbob.org/start-process-in-jenkins.html java -Dhu ...

  6. 自适应学习率调整:AdaDelta

    Reference:ADADELTA: An Adaptive Learning Rate Method 超参数 超参数(Hyper-Parameter)是困扰神经网络训练的问题之一,因为这些参数不可 ...

  7. div基础

    1. 写在后面的样式优于前面,会把前面的覆盖掉! 2.三角形的造法:width:0; height:0;然后设置border-left   border-right  border-top  bord ...

  8. SRM 595 DIV1 250

    挺简单的组合把. #include <cstdio> #include <cstring> #include <iostream> #include <vec ...

  9. android中利用Socket实现手机客户端与PC端进行通信

    1. 项目截图

  10. iOS Xcode7免证书真机调试

    在Xcode 7 正式发布的日子里,苹果再次给开发者带来了惊喜,从此以后只要是真机调试的时候,不再需要花99刀去购买开发者证书,但是如果APP需要上架依旧还是需要购买开发者证书的.这个惊喜对正在学习i ...