java學(xué)習(xí) 為什么后端喜歡把“男女”等枚舉類型的數(shù)據(jù)轉(zhuǎn)成01?
為什么后端喜歡把“男女”等枚舉類型的數(shù)據(jù)轉(zhuǎn)成01?因?yàn)檫@是一種古老但錯(cuò)誤的做法。在過去,所有詞典都是從零開始排列的。有兩個(gè)問題:人腦不能快速推斷。當(dāng)你看到3時(shí),你知道3代表哪個(gè)狀態(tài)嗎?你只能查字典。0
為什么后端喜歡把“男女”等枚舉類型的數(shù)據(jù)轉(zhuǎn)成01?
因?yàn)檫@是一種古老但錯(cuò)誤的做法。
在過去,所有詞典都是從零開始排列的。有兩個(gè)問題:人腦不能快速推斷。當(dāng)你看到3時(shí),你知道3代表哪個(gè)狀態(tài)嗎?你只能查字典。0必須是男性?趕上那些以女性為主的程序員,讓0代表女性,你能說什么?
第二個(gè)問題是0是假值,將0與一組真值混合是錯(cuò)誤的做法。
正確的方法:m代表男性,f代表女性,ing代表進(jìn)行中,ed代表完成,todo代表未開始,等等。如果你真的遇到了一個(gè)復(fù)雜的狀態(tài),比如十幾個(gè)狀態(tài),你可以隨時(shí)添加它們,你應(yīng)該首先將它們分為三類,然后在你的大腦可以讀取的單詞下面劃線,比如D琰ing,只要大腦知道D代表什么,可以縮寫為這個(gè)簡(jiǎn)單的枚舉值。