中國 100 噸級重型運載火箭推進中,預計 2028 年前後首飛
阿新 • • 發佈:2021-09-29
1:常量(掌握) | |
(1)常量:在程式的執行過程中,其值不發生改變的量。 | |
(2)常量的分類: | |
A:字面值常量 | |
B:自定義常量(面向物件部分講) | |
(3)字面值常量 | |
A:字串常量 用""括起來的內容。舉例:"helloworld" | |
B:整數常量 舉例:1,200 | |
C:小數常量 舉例:12.5 | |
D:字元常量 用''括起來的內容。舉例:'a','A','0' | |
E:布林常量 比較特殊,只有兩個值。舉例:true,false | |
F:空常量 null(陣列部分講) | |
(4)Java中針對整數常量的表現形式 | |
A:二進位制 | |
由0,1組成。以0b開頭 | |
B:八進位制 | |
由0,1,2,3,4,5,6,7組成。以0開頭 | |
C:十進位制 | |
由0,1,2,3,4,5,6,7,8,9組成。預設是十進位制。 | |
D:十六進位制 | |
由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F組成。以0x開頭。 | |
注意:字母不區分大小寫。 | |
2:進位制(理解) | |
(1)一種計數的方式。x進製表示逢x進1。 | |
(2)進位制轉換 | |
A:其他進位制到十進位制 | |
係數*基數^權之和。 | |
B:十進位制到其他進位制 | |
除基取餘,直到商為0,餘數反轉。 | |
C:快速轉換 | |
a:二進位制和十進位制 | |
8421碼 | |
b:二進位制和八進位制 | |
三位組合 | |
c:二進位制和十六進位制 | |
四位組合 | |
D:任意X進位制到任意Y進位制的轉換 | |
可以使用十進位制作為橋樑即可。 | |
3:有符號資料表示法(理解) | |
(1)計算機中資料的儲存和運算都是採用補碼進行的。 | |
(2)資料的有符號表示法 | |
用0表示正號,1表示負號。 | |
A:原碼 | |
正數:正常的二進位制 | |
負數:符號為為1的二進位制 | |
B:反碼 | |
正數:和原碼相同 | |
負數:和原碼的區別是,符號位不變,數值位取反。1變0,0變1 | |
C:補碼 | |
正數:和原碼相同 | |
負數:反碼+1 | |
(3)資料的有符號表示法練習 | |
A:已知原碼,求反碼和補碼 | |
B:已知補碼,求原碼。 | |
(4)補充:float浮點數在計算機中的表示 | |
符號位 指數位 底數位 | |
S E M | |
3:變數(掌握) | |
(1)變數:在程式的執行過程中,其值發生改變的量。 | |
(2)定義格式: | |
A:資料型別 變數名 = 初始化值; | |
B:資料型別 變數名; | |
變數名 = 初始化值; | |
4:資料型別(掌握) | |
(1)資料型別分類 | |
A:基本型別:4類8種 | |
B:引用型別:類,介面,陣列 | |
(2)基本型別 | |
A:整數 佔用的記憶體空間 | |
byte 1 | |
short 2 | |
int 4 | |
long 8 | |
B:浮點數 | |
float 4 | |
double 8 | |
C:字元 | |
char 2 | |
D:布林 | |
boolean 1 | |
面試題:Java中的字元可以儲存一個漢字嗎?為什麼呢? | |
(3)注意事項:(特別注意) | |
A:整數預設是int型別,浮點數預設是double型別(運算中一定要特別注意隱式轉換) | |
B:定義long型別資料的時候,建議加上L或者l。推薦L | |
定義float型別資料的時候,建議加上F或者f。推薦F | |
(不加f或F編譯會報損失精度的錯誤) | |
(4)使用變數的注意事項 | |
A:作用域 | |
每一個變數在它所屬的大括號內有效,並且,同一個作用域不能定義同名的變 量。(for迴圈()中定義的變數與在for{}中定義有相同的作用域) | |
B:初始化值 | |
變數必須先宣告,賦值,最後才能使用 | |
C:在一行上定義的問題 | |
可以在一行上定義多個變數,但是不建議。 | |
int a,b; | |
a = 10; | |
b = 20; | |
int a = 10,b = 20; | |
int a = 10; | |
int b = 20; | |
5:型別轉換(掌握) | |
注意: | |
boolean型別不參與。 | |
(1)隱式轉換:從小到大 | |
byte,short,char --> int --> long --> float --> double | |
long為什麼可以到float呢? | |
A:因為long和float的底層儲存結構不同。 | |
B:資料範圍 | |
long: 2^63 | |
float: 3.4*10^38 | |
3.4*10^38 > 3.4*8^38 = 3.4*2^3^38 = 3.4*2^114 > 2^63 | |
(2)強制轉換:從大到小 | |
一般不建議這樣做,因為可能有精度的損失。 | |
格式: | |
目標資料型別 變數名 = (目標資料型別)(被轉換的資料); | |
6:運算子(理解) | |
(1)運算:對常量和變數進行操作的過程稱為運算。 | |
(2)運算子:對常量和變數進行操作的符號稱為運算子 | |
(3)表示式:由運算子把常量和變數連線起來的式子 | |
注意:表示式必須有結果 | |
7:算術運算子(掌握) | |
(1)+,-,*,/,%,++,-- | |
(2)+: | |
正號 | |
加法 | |
字串連線符 | |
(3)%和/的區別 | |
%:餘數 | |
/:商 | |
整數相除,結果是整數。想得到小數,可以乘以或者除以1.0 | |
%的結果的符號和前面的那個數一致。 | |
(4)++,-- | |
A:單獨使用 | |
放在資料的前面和後面效果一樣。 | |
B:參與操作使用 | |
放在資料的前面,先資料變化,再參與運算。 | |
放在資料的後面,先參與運算,再資料變化。 | |
C:++,--的練習題。 | |
8:賦值運算子(掌握) | |
(1)=,+=,-=,*=,/=,%=,... | |
(2)基本用法 | |
int a = 10; | |
把10賦值給int型別的變數a。 | |
(3)複合用法 | |
int a = 10; | |
a += 20; | |
值等價於:a = a + 20; | |
把左邊和右邊的結果賦值給左邊,並強制轉換為左邊的型別。 | |
(4)面試題 | |
short s = 1; s = s + 1; | |
short s = 1, s +=1; | |
哪個有問題。 | |
9:關係運算符(掌握) | |
(1)==,!=,>,>=,<,<= | |
(2)注意: | |
A:無論表示式簡單還是複雜,結果肯定是boolean型別 | |
B:千萬不要把"=="寫成"=" | |
10:邏輯運算子(掌握) | |
(1)&,|,^,!,&&,|| | |
(2)單用法 | |
&:有false則false | |
|:有true則true | |
^:相同false,不同true(情侶關係)(交換兩個變數的值的四種方式) | |
!:偶數個,值不變;奇數個,值相反。 | |
(3)雙用法: | |
&&,||和&,|的區別 | |
&&具有短路效果,左邊為false,右邊不執行。 | |
||具有短路效果,左邊為true,右邊不執行。 |