
有天賦是一回事 , 有動力去深究細微之處卻是另一回事 ?!票取げ既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 , 就會經過一番處理 , 然后比較引號里的值是否相同:
- 算命的說我明年有機會進入婚姻,還有一個說我明年正緣比較旺,都是什么意思?。?算命抽到鉽字是什么意思
- 一個人的生氣方位怎么確定??八字眉的人命運
- 《懷孕能不能算命》 第一次懷孕 孩子才40幾天 可是很多因素我不能給他一個機會看看這個世界?
- 一個人坐牢是八字原因,還是祖墳風水原因?誰知道!八字坐牢
- 風水規律:為大家提供一個專業高質量的服務平臺!
- 一個人如果擁有蛇與老鼠這兩個生肖,該怎么看待這個問題??屬鼠2020生肖貴人
- 算命有什么意義?
- 寶寶起名大全:十首古詩詞帶你領略春夏秋冬,取一個內涵有文化的好名字!
- 寶寶起名大全:唐詩宋詞元曲中的妙語連珠,取一個優雅的好名字!
- 找一個離異或喪偶的對象結婚好嗎?
