Java中数据类型的取值范围
整數(shù)數(shù)據(jù)類型的取值范圍
我們都知道計(jì)算機(jī)的底層是二進(jìn)制,也知道不同的整數(shù)類型存儲(chǔ)值的范圍不同,可這些數(shù)值在計(jì)算機(jī)底層是怎樣存儲(chǔ)的呢?數(shù)值范圍又是怎么計(jì)算出來(lái)的呢?
下面以java來(lái)進(jìn)行舉例:
整數(shù)數(shù)據(jù)類型其中最高位是符號(hào)位,用來(lái)表示正數(shù)或負(fù)數(shù)。其中0用來(lái)表示正數(shù),1用來(lái)表示負(fù)數(shù)。
那么,剩下的位就是數(shù)值位,用來(lái)表示數(shù)值大小的。
那么byte的可用范圍就是7位了:
從 000 0000 ~ 111 1111 轉(zhuǎn)換成十進(jìn)制也就是從 0 ~ 127
如果加上符號(hào)位呢?
1111 1111 ~ 0111 1111 轉(zhuǎn)換成十進(jìn)制是從 -127 ~ 127
可是如果我們的 111 1111 還能再進(jìn)一位呢?
那不就是變成 1000 0000了嗎,那這個(gè)數(shù)到底是用來(lái)表示-128還是128呢?
因?yàn)榉?hào)位的存在,如果讓它來(lái)表示128的話,就亂套了,所以我們就規(guī)定只用它來(lái)表示正的128。
所以一個(gè)字節(jié)能表示的最大范圍是從 -2^7 ~ 2^7-1 ps:2^7是128
無(wú)符號(hào)類型的取值范圍(char)
Java中的char類型是用兩個(gè)字節(jié)來(lái)表示,使用的是Unicode編碼,所以可以正常表示中文字符。
兩個(gè)字節(jié)一共十六位,又因?yàn)闆](méi)有符號(hào)位,都是數(shù)值位的原因,所以表值范圍是從:
0000 0000 0000 0000 ~ 1111 1111 1111 1111 1111 1111 (65535)
所以char類型的表值范圍是從 0 ~ 2^16-1
轉(zhuǎn)載于:https://www.cnblogs.com/imzw/p/5022516.html
總結(jié)
以上是生活随笔為你收集整理的Java中数据类型的取值范围的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CAD迷你看图 4.4.3 中文版 (最
- 下一篇: java程序设计pdf下载_Java程序