02.01_Java語(yǔ)言基礎(chǔ)(常量的概述和使用)(掌握)
- A:什么是常量
- 在程序執(zhí)行的過(guò)程中其值不可以發(fā)生改變
- B:Java中常量的分類
- 字面值常量
- 自定義常量(面向?qū)ο蟛糠种v)
- C:字面值常量的分類
- 字符串常量 用雙引號(hào)括起來(lái)的內(nèi)容
- 整數(shù)常量 所有整數(shù)
- 小數(shù)常量 所有小數(shù)
- 字符常量 用單引號(hào)括起來(lái)的內(nèi)容,里面只能放單個(gè)數(shù)字,單個(gè)字母或單個(gè)符號(hào)
- 布爾常量 較為特殊,只有true和false
- 空常量 null(數(shù)組部分講解)
02.02_Java語(yǔ)言基礎(chǔ)(進(jìn)制概述和二,八,十六進(jìn)制圖解)(了解)
- A:什么是進(jìn)制
- 進(jìn)制:就是進(jìn)位制换淆,是人們規(guī)定的一種進(jìn)位方法哗总。 對(duì)于任何一種進(jìn)制--X進(jìn)制,就表示某一位置上的數(shù)運(yùn)算時(shí)是逢X進(jìn)一位倍试。二進(jìn)制就是逢二進(jìn)一讯屈,八進(jìn)制是逢八進(jìn)一,十進(jìn)制是逢十進(jìn)一县习,十六進(jìn)制是逢十六進(jìn)一涮母。
- 例如一周有七天,七進(jìn)制,一年有十二個(gè)月,十二進(jìn)制
- B:十進(jìn)制的由來(lái)
- 十進(jìn)制的由來(lái)是因?yàn)槿祟愑惺畟€(gè)手指
- C:二進(jìn)制的由來(lái)
- 其實(shí)二進(jìn)制來(lái)源與中國(guó),請(qǐng)看史料記載
- 18世紀(jì)德國(guó)數(shù)理哲學(xué)大師萊布尼茲從他的傳教士朋友鮑威特寄給他的拉丁文譯本《易經(jīng)》中,讀到了八卦的組成結(jié)構(gòu)躁愿,驚奇地發(fā)現(xiàn)其基本素?cái)?shù)(0)(1)叛本,即《易經(jīng)》的陰爻yao- -和__陽(yáng)爻,其進(jìn)位制就是二進(jìn)制攘已,并認(rèn)為這是世界上數(shù)學(xué)進(jìn)制中最先進(jìn)的炮赦。20世紀(jì)被稱作第三次科技革命的重要標(biāo)志之一的計(jì)算機(jī)的發(fā)明與應(yīng)用,其運(yùn)算模式正是二進(jìn)制样勃。它不但證明了萊布尼茲的原理是正確的,同時(shí)也證明了《易經(jīng)》數(shù)理學(xué)是很了不起的性芬。
- D:八進(jìn)制的由來(lái)
- 任何數(shù)據(jù)在計(jì)算機(jī)中都是以二進(jìn)制的形式存在的峡眶。二進(jìn)制早期由電信號(hào)開(kāi)關(guān)演變而來(lái)。一個(gè)整數(shù)在內(nèi)存中一樣也是二進(jìn)制的植锉,但是使用一大串的1或者0組成的數(shù)值進(jìn)行使用很麻煩辫樱。
- 所以就想把一大串縮短點(diǎn),將二進(jìn)制中的三位用一位表示俊庇。這三位可以取到的最大值就是7.超過(guò)7就進(jìn)位了狮暑,這就是八進(jìn)制。
- E:十六進(jìn)制的由來(lái)
- 但是對(duì)于過(guò)長(zhǎng)的二進(jìn)制變成八進(jìn)制還是較長(zhǎng)辉饱,所以出現(xiàn)的用4個(gè)二進(jìn)制位表示一位的情況搬男,四個(gè)二進(jìn)制位最大是15,這就是十六進(jìn)制彭沼。
- F:不同進(jìn)制表現(xiàn)同一個(gè)數(shù)據(jù)的形式特點(diǎn)
- 進(jìn)制越大缔逛,表現(xiàn)形式越短
02.03_Java語(yǔ)言基礎(chǔ)(不同進(jìn)制數(shù)據(jù)的表現(xiàn)形式)(掌握)
- A:二進(jìn)制的數(shù)據(jù)表現(xiàn)形式
- 由0,1組成。以0b(b可以大寫(xiě)也可以小寫(xiě))開(kāi)頭(JDK1.7版本可以表示二進(jìn)制了)
- B:八進(jìn)制的數(shù)據(jù)表現(xiàn)形式
- 由0,1,…7組成。以0開(kāi)頭
- C:十進(jìn)制的數(shù)據(jù)表現(xiàn)形式
- 由0,1,…9組成褐奴。整數(shù)默認(rèn)是十進(jìn)制的
- D:十六進(jìn)制的數(shù)據(jù)表現(xiàn)形式
- 由0,1,…9,a,b,c,d,e,f(大小寫(xiě)均可)按脚。以0x開(kāi)頭
02.04_Java語(yǔ)言基礎(chǔ)(任意進(jìn)制到十進(jìn)制的轉(zhuǎn)換圖解)(了解)
- A:任意進(jìn)制到十進(jìn)制的轉(zhuǎn)換原理
- 系數(shù):就是每一位上的數(shù)據(jù)。
- 基數(shù):X進(jìn)制敦冬,基數(shù)就是X辅搬。
- 權(quán):在右邊,從0開(kāi)始編號(hào)脖旱,對(duì)應(yīng)位上的編號(hào)即為該位的權(quán)堪遂。
- 結(jié)果:把系數(shù)*基數(shù)的權(quán)次冪相加即可。
02.05_Java語(yǔ)言基礎(chǔ)(十進(jìn)制到任意進(jìn)制的轉(zhuǎn)換圖解)(了解)
- A:十進(jìn)制到任意進(jìn)制的轉(zhuǎn)換原理
- 除積倒取余
02.06_Java語(yǔ)言基礎(chǔ)(快速的進(jìn)制轉(zhuǎn)換法)(了解)
- A:8421碼及特點(diǎn)
- 8421碼是中國(guó)大陸的叫法夯缺,8421碼是BCD代碼中最常用的一種蚤氏。在這種編碼方式中每一位二值代碼的1都是代表一個(gè)固定數(shù)值,把每一位的1代表的十進(jìn)制數(shù)加起來(lái)踊兜,得到的結(jié)果就是它所代表的十進(jìn)制數(shù)碼竿滨。
- B:通過(guò)8421碼的方式進(jìn)行二進(jìn)制和十進(jìn)制的相互轉(zhuǎn)換
- C:二進(jìn)制到八進(jìn)制的簡(jiǎn)易方式
- D:二進(jìn)制到十六進(jìn)制的簡(jiǎn)易方式
02.07_Java語(yǔ)言基礎(chǔ)(原碼反碼補(bǔ)碼)(了解)
- A:為什么要學(xué)習(xí)原碼反碼補(bǔ)碼?
- 后面要學(xué)習(xí)強(qiáng)制類型轉(zhuǎn)換,如果不知道有原反補(bǔ)會(huì)看不懂結(jié)果
- B:有符號(hào)數(shù)據(jù)表示法的幾種方式
- 原碼
- 就是二進(jìn)制定點(diǎn)表示法,即最高位為符號(hào)位捏境,“0”表示正于游,“1”表示負(fù),其余位表示數(shù)值的大小垫言。
- 通過(guò)一個(gè)字節(jié),也就是8個(gè)二進(jìn)制位表示+7和-7
- 0(符號(hào)位) 0000111
- 1(符號(hào)位) 0000111
- 反碼
- 正數(shù)的反碼與其原碼相同贰剥;負(fù)數(shù)的反碼是對(duì)其原碼逐位取反,但符號(hào)位除外筷频。
- 補(bǔ)碼
- 正數(shù)的補(bǔ)碼與其原碼相同蚌成;負(fù)數(shù)的補(bǔ)碼是在其反碼的末位加1。
- 原碼
02.09_Java語(yǔ)言基礎(chǔ)(變量的概述及格式)(掌握)
- A:什么是變量
- 在程序執(zhí)行的過(guò)程中凛捏,在某個(gè)范圍內(nèi)其值可以發(fā)生改變的量
- B:變量的定義格式
- 數(shù)據(jù)類型 變量名 = 變量值;
- C:為什么要定義變量
- 用來(lái)不斷的存放同一類型的常量担忧,并可以重復(fù)使用
02.10_Java語(yǔ)言基礎(chǔ)(數(shù)據(jù)類型的概述和分類)(掌握)
- A:為什么有數(shù)據(jù)類型
- Java語(yǔ)言是強(qiáng)類型語(yǔ)言,對(duì)于每一種數(shù)據(jù)都定義了明確的具體數(shù)據(jù)類型坯癣,在內(nèi)存中分配了不同大小的內(nèi)存空間
- B:Java中數(shù)據(jù)類型的分類
- 基本數(shù)據(jù)類型
- 引用數(shù)據(jù)類型
- 面向?qū)ο蟛糠种v解
- C:基本數(shù)據(jù)類型分類(4類8種)
- 整數(shù)型
- byte 占一個(gè)字節(jié) -128到127
- short 占兩個(gè)字 -215~215-1
- int 占四個(gè)字節(jié) -231~231-1
- long 占八個(gè)字節(jié) -263~263-1
- 浮點(diǎn)型
- float 占四個(gè)字節(jié) -3.403E38~3.403E38 單精度
- double 占八個(gè)字節(jié)-1.798E308~1.798E308 雙精度
- 字符型
- char 占兩個(gè)字節(jié) 0~65535
- 布爾型
- boolean
- boolean理論上是占八分之一個(gè)字節(jié),因?yàn)橐粋€(gè)開(kāi)關(guān)就可以決定是true和false了,但是java中boolean類型沒(méi)有明確指定他的大小
- boolean
- 整數(shù)型
02.11_Java語(yǔ)言基礎(chǔ)(定義不同數(shù)據(jù)類型的變量)(掌握)
- A:案例演示
int i = 30;
long x = 8888888888L; //整數(shù)默認(rèn)是int類型瓶盛, 如果整數(shù)很大,一定后面加L
float f = 12.3F; //小數(shù)默認(rèn)是double示罗,如果使用float惩猫,最好習(xí)慣加F
double d = 33.4;
02.13_Java語(yǔ)言基礎(chǔ)(數(shù)據(jù)類型轉(zhuǎn)換之隱式轉(zhuǎn)換)(掌握)
- 取值范圍小的數(shù)據(jù)類型與取值范圍大的數(shù)據(jù)類型進(jìn)行運(yùn)算,會(huì)先將小的數(shù)據(jù)類型提升為大的,再運(yùn)算
02.14_Java語(yǔ)言基礎(chǔ)(數(shù)據(jù)類型轉(zhuǎn)換之強(qiáng)制轉(zhuǎn)換)(掌握)
- A:強(qiáng)制轉(zhuǎn)換問(wèn)題
- int a = 10;
- byte b = 20;
- b = a + b;
- B:強(qiáng)制轉(zhuǎn)換的格式
- b = (byte)(a + b);
- C:強(qiáng)制轉(zhuǎn)換的注意事項(xiàng)
- 如果超出了被賦值的數(shù)據(jù)類型的取值范圍得到的結(jié)果會(huì)與你期望的結(jié)果不同
02.15_Java語(yǔ)言基礎(chǔ)(面試題之變量相加和常量相加的區(qū)別)(掌握)
- A:案例演示
- 面試題:看下面的程序是否有問(wèn)題,如果有問(wèn)題蚜点,請(qǐng)指出并說(shuō)明理由轧房。
- byte b1 = 3;
- byte b2 = 4;
- byte b3 = b1 + b2;
- 從兩方面去回答這個(gè)題
- b1和b2是兩個(gè)變量,變量里面存儲(chǔ)的值都是變化的,所以在程序運(yùn)行中JVM是無(wú)法判斷里面具體的值
- byte類型的變量在進(jìn)行運(yùn)算的時(shí)候,會(huì)自動(dòng)類型提升為int類型
- byte b4 = 3 + 4;
- 3和4都是常量,java有常量?jī)?yōu)化機(jī)制,就是在編譯的的時(shí)候直接把3和4的結(jié)果賦值給b4了
02.16_Java語(yǔ)言基礎(chǔ)(long與float的取值范圍誰(shuí)大誰(shuí)小)(了解)
- 進(jìn)行混合運(yùn)算的時(shí)候,byte,short,char不會(huì)相互轉(zhuǎn)換,都會(huì)自動(dòng)類型提升為int類型,其他類型進(jìn)行混合運(yùn)算的是小的數(shù)據(jù)類型提升為大的
byte,short,char -- int -- long -- float -- double
long: 8個(gè)字節(jié)
float:4個(gè)字節(jié)
IEEE754
4個(gè)字節(jié)是32個(gè)二進(jìn)制位
1位是符號(hào)位
8位是指數(shù)位
00000000 11111111
0到255
1到254
-126到127
23位是尾數(shù)位
每個(gè)指數(shù)位減去127
A:它們底層的存儲(chǔ)結(jié)構(gòu)不同。
-
B:float表示的數(shù)據(jù)范圍比long的范圍要大
- long:2^63-1
- float:3.410^38 > 210^38 > 28^38 = 22338 = 2*2^114 > 2^63-1
02.18_Java語(yǔ)言基礎(chǔ)(char數(shù)據(jù)類型)(掌握)
- A:char c = 97; 0到65535
- B:Java語(yǔ)言中的字符char可以存儲(chǔ)一個(gè)中文漢字嗎?為什么呢?
- 可以禽额。因?yàn)镴ava語(yǔ)言采用的是Unicode編碼锯厢。Unicode編碼中的每個(gè)字符占用兩個(gè)字節(jié)皮官。中文也是占的兩個(gè)字節(jié)
- 所以,Java中的字符可以存儲(chǔ)一個(gè)中文漢字
02.19_Java語(yǔ)言基礎(chǔ)(算術(shù)運(yùn)算符的基本用法)(掌握)
- A:什么是運(yùn)算符
- 就是對(duì)常量和變量進(jìn)行操作的符號(hào)实辑。
- B:運(yùn)算符的分類
- 算術(shù)運(yùn)算符捺氢,賦值運(yùn)算符,比較(關(guān)系或條件)運(yùn)算符剪撬,邏輯運(yùn)算符摄乒,位運(yùn)算符,三目(元)運(yùn)算符
- C:算數(shù)運(yùn)算符有哪些
- +,-,*,/,%,++,--
- D:注意事項(xiàng):
- a:+號(hào)在java中有三種作用,代表正號(hào),做加法運(yùn)算,字符串的連接符
- b:整數(shù)相除只能得到整數(shù)残黑。如果想得到小數(shù)馍佑,必須把數(shù)據(jù)變化為浮點(diǎn)數(shù)類型
- c:/獲取的是除法操作的商,%獲取的是除法操作的余數(shù)
- %運(yùn)算符
- 當(dāng)左邊的絕對(duì)值小于右邊絕對(duì)值時(shí),結(jié)果是左邊
- 當(dāng)左邊的絕對(duì)值等于右邊或是右邊的倍數(shù)時(shí),結(jié)果是0
- 當(dāng)左邊的絕對(duì)值大于右邊絕對(duì)值時(shí),結(jié)果是余數(shù)
- %運(yùn)算符結(jié)果的符號(hào)只和左邊有關(guān)系,與右邊無(wú)關(guān)
- 任何一個(gè)正整數(shù)%2結(jié)果不是0就是1可以用來(lái)當(dāng)作切換條件
02.20_Java語(yǔ)言基礎(chǔ)(算術(shù)運(yùn)算符++和--的用法)(掌握)
- A:++,--運(yùn)算符的作用
- 自加(++)自減(--)運(yùn)算
- ++:自加梨水。對(duì)原有的數(shù)據(jù)進(jìn)行+1
- --:自減拭荤。對(duì)原有的數(shù)據(jù)進(jìn)行-1
- a:單獨(dú)使用:
- 放在操作數(shù)的前面和后面效果一樣。(這種用法是我們比較常見(jiàn)的)
- b:參與運(yùn)算使用:
- 放在操作數(shù)的前面疫诽,先自增或者自減舅世,然后再參與運(yùn)算。
- 放在操作數(shù)的后面奇徒,先參與運(yùn)算雏亚,再自增或者自減。
02.21_Java語(yǔ)言基礎(chǔ)(算術(shù)運(yùn)算符++和--的練習(xí))(掌握)
-
A:案例演示
- 請(qǐng)分別計(jì)算出a,b,c的值?
int a = 10; int b = 10; int c = 10; a = b++; c = --a; b = ++a; a = c--;
-
B:案例演示
-
請(qǐng)分別計(jì)算出x,y的值?
int x = 4; int y = (x++)+(++x)+(x*10);
-
-
C:面試題
- byte b = 10;
- b++;
- b = b + 1;
- 問(wèn)哪句會(huì)報(bào)錯(cuò),為什么
02.22_Java語(yǔ)言基礎(chǔ)(賦值運(yùn)算符的基本用法)(掌握)
- A:賦值運(yùn)算符有哪些
-
a:基本的賦值運(yùn)算符:=
- 把=右邊的數(shù)據(jù)賦值給左邊摩钙。
-
b:擴(kuò)展的賦值運(yùn)算符:+=,-=,*=,/=,%=
- += 把左邊和右邊做加法罢低,然后賦值給左邊。
-
02.23_Java語(yǔ)言基礎(chǔ)(賦值運(yùn)算符的面試題)(掌握)
- A:案例演示
- 面試題:看下面的程序是否有問(wèn)題胖笛,如果有問(wèn)題网持,請(qǐng)指出并說(shuō)明理由。
- short s=1;s = s+1;
- short s=1;s+=1;
02.24_Java語(yǔ)言基礎(chǔ)(關(guān)系運(yùn)算符的基本用法及其注意事項(xiàng))(掌握)
- A:關(guān)系運(yùn)算符有哪些(比較運(yùn)算符,條件運(yùn)算符)
- ==,!=,>,>=,<,<=
- 注意事項(xiàng):
無(wú)論你的操作是簡(jiǎn)單還是復(fù)雜长踊,結(jié)果是boolean類型翎碑。
"=="不能寫(xiě)成"="。
END之斯。
我是小侯爺。
在魔都艱苦奮斗遣铝,白天是上班族佑刷,晚上是知識(shí)服務(wù)工作者。
如果讀完覺(jué)得有收獲的話酿炸,記得關(guān)注和點(diǎn)贊哦瘫絮。
非要打賞的話,我也是不會(huì)拒絕的填硕。