台式计算机计量单位,计算机的计量单位以及常见的数据类型
為什么會寫這篇文章,面試官問數據類型占字節大小干什么。
實際開發中,你肯定計算預估過一些數據具體要占多少磁盤,或者是內存。
如果你沒有不去在意這些東西,很多服務器資源,都會被無形的浪費掉。
我們知道計算機的世界其實就是0和1,計算機的最終運算都是0和1來完成的。
計算機最小的計量單位是bit,叫做比特,也叫做位。
一個字節 = 8?比特
# #?常見的轉換
我們所說的 1?KB?是指 1024字節
1字節(Byte)= 8位(bit)
1千字節(KB,Kilobyte)=1024字節(2的10次方字節)(1KB=1024B)
# #?java中的數據類型
int? ? ? ? ? ? ? ? 四個字節
char? ? ? ? ? ? ?兩個字節
double? ? ? ? ?八個字節
float? ? ? ? ? ? ?四個字節
short? ? ? ? ? ? 兩個字節
long? ? ? ? ? ? ?八個字節
byte? ? ? ? ? ? ?一個字節
boolean? ? ? ?一個比特
# #?字符和字節的關系
首先字符和字節的轉換關系,是和編碼格式有關系的,現在都是?UTF-8?的編碼格式。
在UTF-8下,一個字符漢字占三個字節,一個字符字母或者標點占一個字節
參考測試文章:https://ruby-china.org/topics/24920
如果是PG?的話? select? pg_column_size(字段名)? from?表名? ?就可以看到占用的字節長度,我測試在UTF-8?下,varchar不管用不用都先占一個,也就是放一個漢字字符,結果就是 4 ,如果兩個漢字字符,結果就是 7
這里?PG和mysql?非常不一樣,mysql?的varchar?是不占用的任何額外的字節的,也就是說,一漢字字符則是 3
mysql的測試sql :select?length(字段名)?from?表名
# #?數據庫字段類型以及對應大小
int? ? ? ? ? ? ? ?——>? 4?字節
pg?數據庫里邊的?int8?是?八個字節
varchar? ? ? ?——>?這個要具體的去算,是不確定的
舉個例子:設置了?varchar(3) ,就意味著這能放 3?個字符,具體什么是字符呢,就是你放漢字也行,放數字符號都行,但是一個就算一個字符了,比方你放:ABC ,或者? ?哈嘍1,? 反正只能放下三個,至于是漢字還是?非漢字,都可以。但是?漢字是三個字節,其他都是一個,前提是在?utf-8?下。?如果是?ABC?那就是一用?三個字節,?如果你放? 哈嘍啊? 這三個漢字,那就是?九個字節。
timestamp? ?——> 8?字節
其他字段暫時沒遇到,后邊用到再更新
補充一下,varchar?和?char,?char?申請下來就是固定的,不管用不用,都需要消耗那么多內存,varchar?是用多少消耗多少。
總結
以上是生活随笔為你收集整理的台式计算机计量单位,计算机的计量单位以及常见的数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特斯拉计划取消FSD Beta 版驾驶员
- 下一篇: 计算机怎么设置网络共享,局域网共享设置,