没有躲过的坑--有if就要有else(一定成对)
我們都很擅長流程控制,能寫出很好很復雜的if語句。但是有時過于興奮,更多的是過于自信而只寫了if,而沒有寫else。
這是一個爭論不休的話題,很多人,很多大師都認為有的情況下可以不寫else,只寫if。
支持 if 和 else 成對出現的人認為:不怕一萬 就怕萬一
認為 if 和 else 沒必要成對出現的人認為:不便于理解,太多沒用的東西。
我之前覺得也必須非要這樣成對,但是今天在工程中遇到了問題。就是當if不成立的時候,沒有相應的處理。
人非圣賢,硬件也不是永遠精確的,所以我還是建議成對的使用if和else.
還有呢,不管是if還是else,處理的代碼一定要加{},即使處理只有一行代碼。
更重要的是:
條件控制是編程中與生俱來的一種結構,但對于很多人來說,除了給帶來麻煩外,沒有發現任何的用處。一次又一次,不斷發現,越少的if語句,越少的 switch語句,越少的循環,就會是越好的代碼。通常這其中的原因是程序員用編程語言實現了更好的抽象歸納。他們并不是有意識的避免使用控制結構。但他 們確實做到了這些。
如果是使用一種面向對象編程語言,我們可以用多態(polymorphism)來代替switch。同樣的技巧也能用在 if語句上,但如果邏輯太簡單,這樣做就有點得不償失。當使用一種有函數式特征的編程語言時,大部分的循環執行任務我們都可以用 map,filter,fold等實現。控制結構最終從代碼中消失,這是對代碼大有好處的事。
還有很長的路要走!!
總結
以上是生活随笔為你收集整理的没有躲过的坑--有if就要有else(一定成对)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uni-app App和H5平台上传视频
- 下一篇: c语言字符串switch用法,C语言sw