計算機一個字節等于多長位 一個字節多長位

計算機一個字節等于多長位 一個字節多長位

有天賦是一回事 , 有動力去深究細微之處卻是另一回事 ?!票取げ既R恩特Java 里的數據類型分為 基礎數據類型和引用數據類型 。
基礎數據類型 在 Java 里只有 8 種:
byte——整型 , 1 字節;short——整型 , 2 字節;int——整型 , 4 字節;long——整型 , 8 字節;float——浮點型 , 4 字節;double——浮點型 , 8 字節;boolean——布爾型 , 1 字節;char——字符型 , 2 字節 。一個字節等于 8 位 。一位(one bite)在計算機里只有 0 或 1 兩個值 。所以位數就決定了基本數據類型的表數范圍 。
引用數據類型
引用的數據類型占的地方通常比較大 , 類型也比較多 , 而且還一直在增長 。
誰都可以創建自己的類型 , 像標準類型一樣使用它 。
最常用的引用類型是 String、Scanner 和 Arrays 。
記住 , 大小寫敏感的 。
基本類型和引用類型的區別:
基本類型真的存放值;
但是引用類型存的是值的引用(在內存里放地址 , 這個地址指向數據真正的地方) 。
引用類型下 , 數據就可以被呈現為一種復雜的結構 , 可以包含其他類型的數據作為他們的一部分 。
有兩種內存空間:堆、棧 。
所有的基本類型存在棧里 , 引用類型的變量存在 heap memory(堆內存) 。
我們以最常見的引用類型之一 String 來做一個簡樸的解釋 。
如上圖 , 其實是以下代碼的說明:
String java = "java";String language = "java";int b = 100;int a = 100;復制代碼int 聲明的 a 和 b 是基本數據類型 , 在左邊的棧里就直接存了他對應的值; 而 String 聲明的 java 和 language 都是引用數據類型 , 在左邊的棧里存的是值的引用 , 也就是值所對應的內存地址:B10 , 真正的值 “java” 存在堆里的一個地方 。java 和 language 對應的值一樣 , 所以他們共享了堆里同一個真正的值 。
假如是用 == 來判定呢? 答案 true , 因為 ==比較的是地址 。
那什么時候兩個一樣的字符串 , 用 == 判定會等于 false呢?
當你用 new 來創建的時候 , 就相稱于告訴程序 , 要開辟一塊新的空間 , 不要跟之前的去共享了 , 此時返回的就是 false 。
【計算機一個字節等于多長位 一個字節多長位】你可能要說 , 那值本來就是一樣的啊 , 所以說 , 假如想要比較引用類型對應的值是否相同 , 要用 equals , 就會經過一番處理 , 然后比較引號里的值是否相同: