zoukankan      html  css  js  c++  java
  • Swift(二)控制流

    要处理条件逻辑,使用 if 和 switch ,要处理循环逻辑,使用 for-in, for, while, 和 do-while 。包着条件或者循环的括号可加可不加。处理逻辑体的花括弧是必须加的。
     

    注意

    以上代码,temaScore自己占了一行代码。这是在playground里看变量值的简单方法。

    在if语句里,条件必须是一个Boolean表达式——意思是像 if score { … } 这种写法是错的,因为不能隐式地转换为0值。

    你可以把 if 和 let 一起使用来处理可能不明确的值。这些值表示为可选值。可选值要么包含一个值,要么包含 nil ,表明这个值是不明确的。在值的类型后加上问号 (?) 来标记这个值是可选的。



    试一试

    将 optionalName 改为 nil。 greeting 是什么值? 再加一个 else 
    语句,如果 optionalName 是 nil ,将 greeting 设置一个不同的值。

    如果可选值是 nil ,条件就为false,花括弧里的代码就会被跳过。否则,可选值被开启(unwrapped,博主注:这里的unwrapped实在不知道该如何翻译更好,这个词的原意为打开、展开,直接翻译过来感觉怪怪的,暂时称之为开启吧,貌似有的文章翻译为解析)并赋给 let 后面的常量,这个常量就可以使的开启值用在代码块里了。

    switch支持任何种类的数据和大量的比较操作——可并不是只限于整型和测试是否相等。

    试一试

    试试把default那一部分去掉。看看会有什么错误?

    注意看一下 let 是怎么用来将匹配模式部分的值赋给常量的。

    匹配switch case 的代码执行完以后,程序从switch语句跳出。不会执行下一个case,所以没有必要在每个case结束部分代码处显示的跳出switch。

    通过提供一组用于各个键值对的名称,用 for-in 来遍历字典。字典是无序集合,所以它们的键和值通过字母表顺序来进行遍历。

    试一试

    增加一个变量来追踪哪种数是最大的,还有这个最大的数是多少

    用 while 来重复执行一段代码直到条件改变。循环的条件也可以放到最后,以保证循环至少执行一次。




    你可以在循环里维持一个索引——要么使用 ..< 创建一套索引或者要么写一个显示的初始化、条件和递进。这两种循环是一样的:


    用 ..< 创建的索引忽略最大值,用 … 创建的索引包含最大值。
  • 相关阅读:
    C#颜色和名称样式对照表
    C#双缓冲技术
    用户自定义控件(含源代码)圆角Panel
    c#事件
    BackgroundWorker 转
    c#范型List的Sort方法详解
    C#double转化成字符串 保留小数位数
    错误提示之:无法激活请求的服务有关详细信息,请参见服务器的诊断跟踪日志
    错误提示之(MVC3.0):HTTP 404。您正在查找的资源(或者它的一个依赖项)可能已被移除,或其名称已更改,或暂时不可用。请检查以下 URL 并确保其拼写正确。
    SQL Server 2008远程服务连接
  • 原文地址:https://www.cnblogs.com/496668219long/p/4492236.html
Copyright © 2011-2022 走看看