02、變量和數據類型

排骨玉米湯 2022-01-08 03:33:04 阅读数:245

1、變量(重中之重)

1.1、變量的基本概念

• 當需要在程序中記錄單個數據內容時,則聲明一個變量即可,而聲明變量的本質就是在內存中申請一個存儲單元,
由於該存儲單元中的數據內容可以發生改變,因此得名為"變量"。
• 由於存放的數據內容大小不一樣,導致所需存儲單元的大小不一樣,在Java語言中使用數據類型加以描述,
為了便於下次訪問還需要給該變量指定一個名字,用於記錄該變量對應的存儲單元。

在這裏插入圖片描述

1.2、變量的聲明方式

• 數據類型 變量名 = 初始值;
• 其中=初始值可以省略,但;不可以省略

1.3、變量的注意事項

• Java是强類型語言,變量在使用前必須聲明來指明其數據類型。
• 變量在使用之前必須初始化。
• 變量不能重複聲明

1.4、標識符的命名法則(筆試)

• 由數字、字母、下劃線以及$等組成,其中數字不能開頭(後面講到)。
• 不能使用Java語言的關鍵字,所謂關鍵字就是Java語言用於錶示特殊含義的單詞。
• 區分大小寫,長度沒有限制但不宜過長。
• 盡量做到見名知意,支持中文但不推薦使用。
• 標識符可以給類/變量/屬性/方法/包 起名字。

在這裏插入圖片描述

1.5、案例題目

• 提示用戶從鍵盤輸入自己的姓名和年齡信息並打印出來。

1.6、官方庫的使用

• JDK中帶有大量的API類, 是有Java系統帶來的工具庫, 這些工具數以萬計! 是Java官方程序員的技術積累。
• 使用這些類可以大大簡化編程, 提高開發效率。
• 具體的API類功能, 可以參閱Java的參考手册

2、數據類型

2.1、數據類型的分類

• 在Java語言中數據類型主要分為兩大類:
• (1)基本數據類型(記住)
byte、short、int、long、float、double、boolean、char
• (2)引用數據類型(了解)
數組、類、接口、枚舉、標注

2.2、常用的進制

• 在日常生活中采用十進制進行數據的描述,逢十進一,十進制權重是:
10^0、10^1、10^2、...
• 在計算機的底層采用0和1組成的二進制序列進行數據的描述,逢二進一,
二進制的權重是2^0、2^1、2^2、...
• 二進制中的最高比特(最左邊)用於代錶符號比特,若該比特是0則錶示非負數,
若該比特是1則錶示負數。
• 八進制和十六進制其實都是二進制的簡寫。

2.3、進制之間的轉換

• 正十進制轉換為二進制的方式
a.除2取餘法,使用十進制整數不斷地除以2取出餘數,直到商為0時將餘數逆序排序。
b.拆分法,將十進制整數拆分為若幹個二進制權重的和,有該權重下面寫1,否則寫0。

在這裏插入圖片描述
在這裏插入圖片描述

• 正二進制轉換為十進制的方式
a.加權法,使用二進制中的每個數字乘以當前比特的權重再累加起來。

在這裏插入圖片描述

• 負十進制轉換為二進制的方式
a.先將十進制的絕對值轉換為二進制,然後進行按比特取反再加1。
• 負數的需要補碼:按比特取反,再加1 。

在這裏插入圖片描述

• 負二進制轉換為十進制的方式
a.先减1再按比特取反,合並為十進制整數後添加負號。

在這裏插入圖片描述

2.4、單個字節錶示的整數範圍(重中之重)

• 在計算機中單個字節錶示八比特二進制比特,其中最高比特(最左邊)代錶符號比特,
使用0代錶非負數,使用1代錶負數,具體錶示的整數範圍如下:
• 非負數錶示範圍:0000 0000 ~ 0111 1111 => 0 ~ 127 => 0 ~ 2^7-1
• 負數錶示範圍:1000 0000 ~ 1111 1111 => -128 ~ -1 => -2^7 ~ -2^0
• 單個字節錶示的整數範圍是:-2^7 ~ 2^7-1,也就是-128 ~ 127.

2.5、整數類型

• Java語言中描述整數數據的類型有:byte、short、int、long,薦int類型
• 其中byte類型在內存空間中占1個字節,錶示範圍是:-2^7 ~ 2^7-1.
• 其中short類型在內存空間中占2個字節,錶示範圍是:-2^15 ~ 2^15-1.
• 其中int類型在內存空間中占4個字節,錶示範圍是:-2^31 ~ 2^31-1.
• 其中long類型在內存空間中占8個字節,錶示範圍是:-2^63 ~ 2^63-1.
• 在Java程序中直接寫出的整數數據叫做直接量/字面值/常量,默認為int類型。
若希望錶達更大的直接量,則在直接量的後面加上l或者L,推薦L。

2.6、浮點類型

• Java語言中用於描述小數數據的類型:float 和 double,推薦double類型
• 其中float類型在內存空間占4個字節,叫做單精度浮點數,可以錶示7比特有效數字,
範圍:-3.403E38~3.403E38。
• 其中double類型在內存空間占8個字節,叫做雙精度浮點數,可以錶示15比特有效數字,
範圍:-1.798E308~1.798E308。
• Java程序中直接寫出的小數數據叫做直接量,默認為double類型,
若希望錶達float類型的直接量,則需要在直接量的後面加上f或者F.

2.7、布爾類型

• Java語言中用於描述真假信息類型有:boolean,數值只有:true 和 false。
• 布爾類型在內存空間中所占大小沒有明確的規定,可以認為是1個字節。

2.8、字符類型

• Java語言中用於描述單個字符的數據類型:char類型。如:'a'、'中'等。
• 其中char類型在內存空間中占2個字節並且沒有符號比特,錶示的範圍是:
0 ~ 65535,由於現實生活中很少有數據能够被單個字符描述,因此以後
的開發中更多的使用由多個字符串起來組成的字符串,使用String類型加
以描述,如:“hello”、“奇點”等。
• 計算機的底層只識別0和1組成的二進制序列,對於字符'a'這樣的圖案來
說不滿足該規則,因此該數據無法直接在計算機中存儲,但現實生活中
存在這樣的圖案數據需要計算機存儲,為了使得該數據能够存儲起來就
可以給該數據指定一個編號,然後將編號存儲起來即可,該編號就叫做
ASCII。
• 要求掌握的ASCII有:'0' - 48 'A' - 65 'a' - 97 空格 - 32 換行符 - 10
• Java字符類型采用Unicode字符集編碼。Unicode是世界通用的定長字符集,所有的字符都是16比特。
• 要求掌握的轉義字符有:\" - " \' - ' \\ - \ \t - 制錶符 \n - 換行符

2.9、基本數據類型之間的轉換

• Java語言中基本數據類型之間的轉換方式:自動類型轉換和强制類型轉換。
• 其中自動類型轉換主要指從小類型到大類型之間的轉換。

在這裏插入圖片描述

• 其中强制類型轉換主要指從大類型到小類型之間的轉換,語法格式如下:
目標類型 變量名 = (目標類型)源類型變量名;
• 强轉有風險,操作需謹慎!
版权声明:本文为[排骨玉米湯]所创,转载请带上原文链接,感谢。 https://gsmany.com/2022/01/202201080333034930.html