swift基本用法-switch用法

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

import UIKit

//------------------------------------------------------------------------------
// 1. 基本使用
// switch 与OC的区别:
// 1> 不需要写break
// 2> 每个分支条件中的指令不能不写
// 3> case如果取多值时,可以使用","分隔

var grand = "a"
var result:String
switch grand.uppercaseString {
    case "A":
        result = "优等 \(grand)"
    case "B":
        result = "良"
    case "C":
        result = "中"
    case "D", "E", "F":
        result = "差"
    default:result = "未知"
}

//------------------------------------------------------------------------------
// 2. 变量/常量赋值
// 在case匹配的同时,可以将switch中的值绑定给一个特定的常量或者变量,以便在case的语句中使用
var point = (10, 10)
switch point {
case (let x, 0) :
    result = "这个点在x轴上, x值是\(x)"
case (0, let y) :
    result = "这个点在y轴上, y值是\(y)"
case let (x, y) :
    result = "这个点的x值是\(x), y值是\(y)"
}

//------------------------------------------------------------------------------
// 3. where
// 使用where可以增加判断条件
var point1 = (10, -10)
switch point1 {
case let (x, y) where x == y :
    result = "在 \\ 对角线上"
case let (x, y) where x == -y :
    result = "在 / 对角线上"
default :
    result = "不在对角线上"
}

//------------------------------------------------------------------------------
// 4. fallthrough
// 在执行完当前case后,继续执行后面的case或者default语句
var num = 20
var str = "\(num)是 "
switch num {
case 0...50:
    str += "0~50之间的 "
    fallthrough
default :
    str += "整数"
}

时间: 2024-11-08 22:37:49

swift基本用法-switch用法的相关文章

SVN switch 用法详解 (ZZ)

SVN switch 用法详解 (ZZ)  http://www.cnblogs.com/dabaopku/archive/2011/05/21/2052820.html 确实,以前不会用switch之前,就像文中提到的那样,先把trunk merge进branch,提交branch,再把branch merge进trunk,是很安全,很少会产生什么冲突,但是有点太麻烦了. switch的危险在于,如果switch之后常常忘记哪些文件是switch过的,需要查看文件的属性或者看revision

java中静态代码块的用法 static用法详解

(一)java 静态代码块 静态方法区别一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用比如main方法就必须是静态的 这是程序入口两者的区别就是:静态代码块是自动执行的;静态方法是被调用的时候才执行的.静态方法(1)在Java里,可以定义一个不需要创建对象的方法,这种方法就是

SVN switch 用法总结

一直知道SVN有个switch命令,但是对它的介绍教程却很少,大多是生硬的svn帮助文档里的文字,从而一直不怎么会用.今天看了这篇文章,突觉豁然开朗,整理下来以备查阅. 使用SVN,自然是需要与别人合作开发才能体现出作用.两个人如果都在trunk上工作,那么每次提交时都要保证代码的正确性,否则自己提交一个bug百出的版本,对方一更新就挂了,所以提交时都要很谨慎.但我觉得应该有人会像我一样有这样的强迫症,文件做点小修改就想提交到服务器上去,唯恐自己将来哪里修改失败而万劫不复.抑或为了备份考虑或者有

Java的switch用法

下面是switch的用法: var status = msg;        switch (status)    //status是表达式        {            case 0:status = "未审核";break;  //0即是对status做判断,是不是status的值等于0,如果是,0后面的:就是做出处理,break跳出当前判断            case 1:status = "审核通过";break;  //执行循环体以外的操作 

SWIFT UITableView的基本用法

import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UI

Swift 另类判断语句用法 button.selected = index < rating

很简洁的用法: index < rating return true or false for (index, button) in ratingButtons.enumerate() { // If the index of a button is less than the rating, that button should be selected. button.selected = index < rating } 大大简化了语句,可读性很强.对比老写法: button.select

Swift—UITextField的基本用法

https://www.jianshu.com/p/63bdeca39ddf 1.文本输入框的创建##### let textField = UITextField(frame: CGRect(x:10, y:60, width:200, height:30)) // let textField = UITextField() // textField.frame = CGRect(x:20,y:30,width:100,height:30) //设置边框样式为圆角矩形 textField.bo

switch用法

#include <stdio.h> #include <ctype.h> int main(int argc,char **argv) {     char ch;          printf("Enter the want you want:\n");          while((ch = getchar()) != '#')     {         if(ch == '\n')             continue;    //改成brea

Swift反射API及其用法

猛戳查看最终版@SwiftGG 尽管 Swift 一直在强调强类型.编译时安全和静态调度,但它的标准库仍然提供了反射机制.可能你已经在很多博客文章或者类似Tuples.Midi Packets 和 Core Data 的项目中见过它.也许你刚好对在项目中使用反射机制感兴趣,或者你想更好滴了解反射可以应用的领域,那这篇文章就正是你需要的.文章的内容是基于我在德国法兰克福 Macoun会议上的一次演讲,它对 Swift 的反射 API 做了一个概述. API 概述 理解这个主题最好的方式就是看API