利用switch语句计算特定的年份的月份共有几天。

//利用switch语句计算特定的年份的月份共有几天。

let year =2015

let month =2




//先判断闰年中二月份的情况

ifmonth ==2

{

    if (year %400 ==0||year %4 ==0 &&year %100 !=0)

        

        //闰年的二月份29天,非闰年的二月份是28

    { print("29") }else { print("28") }

}

    

else {

//考虑其他两种情况

    switchmonth {

    case1,3,5,7,8,10,12 :print("31")

    default:print("30")

    }

}





注意:

贯穿(Fallthrough)

Swift 中的switch不会从上一个 case 分支落入到下一个 case 分支中。相反,只要第一个匹配到的 case 分支完成了它需要执行的语句,整个switch代码块完成了它的执行。相比之下,C 语言要求你显示的插入break语句到每个switch分支的末尾来阻止自动落入到下一个 case 分支中。Swift 的这种避免默认落入到下一个分支中的特性意味着它的switch 功能要比 C 语言的更加清晰和可预测,可以避免无意识地执行多个 case 分支从而引发的错误。

如果你确实需要 C 风格的贯穿(fallthrough)的特性,你可以在每个需要该特性的 case 分支中使用fallthrough关键字。

fallthrough关键字不会检查它下一个将会落入执行的 case 中的匹配条件。fallthrough简单地使代码执行继续连接到下一个 case 中的执行代码,这和 C 语言标准中的switch语句特性是一样的。


版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-08-13 23:05  王刚韧(wanghy_iOS)  阅读(611)  评论(0编辑  收藏  举报