色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>C/C++語言編程>

Swift中比較獨特的基本運算符

大小:0.3 MB 人氣: 2017-09-26 需要積分:1

  一。 需注意的基礎運算符

  1. 賦值運算符(=)

  在Objective-C,C等一些語言中允許你在表達式中使用=號, 如下所示。 testNumber = 20會返回一個bool類型的值YES。 testNumber = 20在表達式中是永真的。所以下方的代碼會打印Log中的內容。

  NSInteger testNumber = 10;

  if((testNumber = 20)) {

  NSLog(@“testNumber = %ld”, testNumber);

  }

  在Swift中是不允許這樣做的,從這一點也能看出Swift語言的安全性。如果你在Swift寫了上面的代碼,就會報出下面的錯誤。IDE就會提示你,問你是不是應該使用==預算符。

  Swift中比較獨特的基本運算符

  2.類型安全性,不允許隱式類型轉換

  這一點也是Swift語言的一個優勢,在Swift語言中是不允許你使用隱式類型轉換的。即便是Double類型和Float類型進行隱式類型轉換也是不可以的。而在Objective-C中是可以進行隱式類型轉換的。看下方實例:

  在Objective-C中你可以這樣做, 下方代碼是可以編譯通過的。兩種類型(Float32, Float64)不同的數據進行相加,然后再把結果隱式轉換成另一種類型(NSInteger)。

  Float32 floatNumber1 = 10.0f;

  Float64 floatNumber2 = 20.0f;

  NSInteger result = floatNumber1 + floatNumber2;

  上面的代碼在Swift中如下,IDE會報一個錯誤,如下所示。錯誤的大致意思就是你不能把Float32類型的數據與Float64類型的數據進行相加。其本質原因是在Swift語言中是不允許你進行隱式類型

  Swift中比較獨特的基本運算符

  在Swift中對上述代碼進行類型顯示轉換,編譯就會通過。在Playground中就會顯示相應的結果值。

  Swift中比較獨特的基本運算符

  3.取模運算(%)的特殊性

  還是以Objective-C做類比,在Objective-C中取模運算(%)只支持整型,如果在取模運算中你使用了浮點類型,那么就會報出如下錯誤。大概意思就是取模運算不支持浮點類型,請轉換成NSInteger類型。

  Swift中比較獨特的基本運算符

  而Swift中的取模運算就支持浮點類型,上面的語句在Swift中就不會報錯,下方是上述事例在Playground中的結果值:

  Swift中比較獨特的基本運算符

  4. nil聚合(合并,連接)運算符(??)

  該運算符可謂是Swift中添加的新特性,??運算符在Objective-C中是沒有的。但是??不是Swift的原創,在C#中也是有??運算符的,而且用法和Swift中??用法類似。都是用來處理nil值的運算符,通過一個實例來進行介紹,一目了然。

  在實例中我們先定義一個可選類型的字符串變量developLanguage,來記錄開發語言, 再定義一個選擇開發語言的字符串變量selectLanguage。如果developLanguage的值為nil的話,默認選擇的語言是“Swift”。 如果developLanguage的值不為nil, 就強制打開可選類型的值,把該值賦值給字符串變量selectLanguage。具體代碼如下所示:

  Swift中比較獨特的基本運算符

  接下來就是預算符??出廠的時候了,一個??的功能就是上面代碼中if -- else的功能。也就是說上面的if -- else 語句可以使用下方的??運算符來代替。下面要注意一點的是在??運算符中使用可選類型變量時沒有使用!強制打開可選類型的值, 因為在??運算符中能確保使用的可選類型變量中有值,如果沒有值就不打開使用,所以就可以把!省略掉。

  Swift中比較獨特的基本運算符

  5.比較運算符支持字符串

  在Objective-C中你可以使用比較運算符來比較運算符,這樣做編譯器是不會報錯的,但是你不會得到你想要的結果。如果你直接用比較運算符來比較字符串的話實質上是比較的字符串的內存地址,請看下方Objective-C的代碼。有下方的輸出結果不難看出比較的是字符串的內存地址。

  Swift中比較獨特的基本運算符

  在Swift中你可以使用比較運算符來比較字符串,如下所示:

  Swift中比較獨特的基本運算符

  6.區間運算符

  區間運算符可以表示兩個值之間的范圍。。。. 是閉區間運算符,比如a.。.b表示a到b這個區間并且包括a和b的值。 。。《是半開區間, 比如a.。

  下方代碼使用的是閉區間運算符1.。.10, 會循環10次

  Swift中比較獨特的基本運算符

  如果改成半開區間,那么就是循環9次

  

?

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 日韩精品亚洲专区在线影院| 蜜芽tv在线观看免费网站| 中文字幕亚洲第一| 亚洲黄色在线| 星空无限传媒视频在线观看视频| 乳交高H糙汉宠文| 日日噜噜夜夜爽爽| 色久悠悠无码偷拍自怕| 日韩特黄特色大片免费视频| 日韩AV爽爽爽久久久久久| 日本双渗透| 色悠悠电影网| 无码日韩人妻精品久久蜜桃免费 | 天天躁日日躁狠狠躁中文字幕老牛| 人人艹人人| 色戒西瓜视频| 帅哥男男GV在线1080P| 天美传媒在线观看完整高清| 午夜婷婷精品午夜无码A片影院| 性色少妇AV蜜臀人妻无码| 亚洲国产日韩欧美视频二区| 亚洲天堂一区二区三区| 在线黑人抽搐潮喷| 最新影音先锋av资源台| 99久久蜜臀AV免费看蛮| 超嫩校花被灌醉在线观看| 国产 有码 无码 电影| 国产手机在线精品| 九九精品久久| 美女挑战50厘米长的黑人| 欧美性猛交xxxxxxxx软件| 色拍拍噜噜噜久久蜜桃| 羞羞影院午夜男女爽爽免费| 亚洲在线无码免费观看| 2021国产精品| 成人网站国产在线视频内射视频| 国产成人片视频一区二区青青| 国模丽丽啪啪一区二区| 久久中文字幕免费高清| 欧美牲交A欧美牲交VDO| 高hh乱亲女真实|