Swift

★学习笔记:《iOS高级:Swift入门精讲②》第一节 Swif

2019-07-22  本文已影响0人  麦穗0615

前言:
本篇为视频学习笔记

if else

让我们先看一下下面代码:

 let age = 4
 if age >= 22 {
     print("Get married")
 } else if age >= 18 {
     print("Being a adult")
 } else if age >= 7 {
     print("Go to school")
 } else {
     print("Just a child")
 }

注意点:

  • if 后面的条件可以省略小括号
  • 条件后面的大括号是不可以省略的
  • if 后面的条件只能是Bool类型


while循环

 var num = 5
 while num > 0 {
     print("num is \(num)")
     num -= 1
 } // 打印了5次
  • 这里不用num--,是因为从Swift3开始,去除了自增( + +)、自减( - - )运算符
    原因:++age + ++age 因为不同的编译器有不同的运算结果,且复杂

repeat-while

 var num = -1
 repeat {
     print("num is \(num)")
 } while num > 0 // 打印了一次
  • repeat-while 相当于C语言中的do-while

for循环

  • 闭区间运算符: a...b, 意思是a <= 取值 <= b
之前
OC: for (int i = 0; i < 5; i++) // 三段式

------------------------------------------------------
Swift 


 let names = ["Anna","Alex","Brian","Jack"]
 for i in 0...3 {
     print(names[i])
 } // Anna Alex Brain Jack

 - 代表i的取值范围是0~3 ,每当取一下值就会执行一下大括号的代码     
------------------------------------------------------
还可以这样写:

 let range  = 1...3
 for i in range {
     print(names[i])
 } // Alex Brain Jack

------------------------------------------------------
除了字面量的写法来说,也可以写变量、常量

  let a = 1
  let b = 2
  
  for i in a...b {
      print(names[i])
  } // Alex Brain
  
  for i in a...3 {
      print(names[i])
  } // Alex Brain Jack

------------------------------------------------------
 // i 默认是let,有需要时可以声明var
 for var i in 1...3 {
     i += 5
     print(i)
 } // 678
 
------------------------------------------------------
如果for循环中根本没有用到 i 建议写成下划线形式  (会有黄色警告⚠️)
  for _ in 0...3 {
      print("123")
  }
  • 半开区间运算符a..<b 意思是a<= 取值 < b

     for i in 1..<5 {
        print(i)
      }
    
  • 单侧区间:让区间朝一个方向尽可能的远

  let names = ["Anna","Alex","Brian","Jack"]
 for name in names[2...] {
     print(name)
 } // Brian Jack
 
 for name in names[...2] {
     print(name)
 } // Anna Alex Brain
 
 for name in names[..<2] {
     print(name)
 } // Anna Alex

for-区间运算符用在数组上

  let names = ["Anna","Alex","Brian","Jack"]
  for name in names[0...3] {
      print(name)
  } // Anna Alex Brain Jack

  代表一开始取出数组names中0位置的元素赋值给name,然后执行大括号中的代码,依次执行。

...5 放到数组中是有范围的,下面那个是没有范围的是从负无穷到5

 let range = ...5   // 负无穷到5
 range.contains(7)  // false
 range.contains(4)  // true
 range.contains(-3) // true
上一篇下一篇

猜你喜欢

热点阅读