day02-Java語言基礎

02.01_Java語言基礎(常量的概述和使用)(掌握)

  • A:什么是常量
    • 在程序執行的過程中其值不可以發生改變
  • B:Java中常量的分類
    • 字面值常量
    • 自定義常量(面向對象部分講)
  • C:字面值常量的分類
    • 字符串常量 用雙引號括起來的內容
    • 整數常量 所有整數
    • 小數常量 所有小數
    • 字符常量 用單引號括起來的內容,里面只能放單個數字,單個字母或單個符號
    • 布爾常量 較為特殊,只有true和false
    • 空常量 null(數組部分講解)
Paste_Image.png

02.02_Java語言基礎(進制概述和二,八,十六進制圖解)(了解)

  • A:什么是進制
    • 進制:就是進位制,是人們規定的一種進位方法。 對于任何一種進制--X進制,就表示某一位置上的數運算時是逢X進一位。二進制就是逢二進一,八進制是逢八進一,十進制是逢十進一,十六進制是逢十六進一。
    • 例如一周有七天,七進制,一年有十二個月,十二進制
  • B:十進制的由來
    • 十進制的由來是因為人類有十個手指
  • C:二進制的由來
    • 其實二進制來源與中國,請看史料記載
    • 18世紀德國數理哲學大師萊布尼茲從他的傳教士朋友鮑威特寄給他的拉丁文譯本《易經》中,讀到了八卦的組成結構,驚奇地發現其基本素數(0)(1),即《易經》的陰爻yao- -和__陽爻,其進位制就是二進制,并認為這是世界上數學進制中最先進的。20世紀被稱作第三次科技革命的重要標志之一的計算機的發明與應用,其運算模式正是二進制。它不但證明了萊布尼茲的原理是正確的,同時也證明了《易經》數理學是很了不起的。
  • D:八進制的由來
    • 任何數據在計算機中都是以二進制的形式存在的。二進制早期由電信號開關演變而來。一個整數在內存中一樣也是二進制的,但是使用一大串的1或者0組成的數值進行使用很麻煩。
    • 所以就想把一大串縮短點,將二進制中的三位用一位表示。這三位可以取到的最大值就是7.超過7就進位了,這就是八進制。
  • E:十六進制的由來
    • 但是對于過長的二進制變成八進制還是較長,所以出現的用4個二進制位表示一位的情況,四個二進制位最大是15,這就是十六進制。
  • F:不同進制表現同一個數據的形式特點
    • 進制越大,表現形式越短

02.03_Java語言基礎(不同進制數據的表現形式)(掌握)

  • A:二進制的數據表現形式
    • 由0,1組成。以0b(b可以大寫也可以小寫)開頭(JDK1.7版本可以表示二進制了)
  • B:八進制的數據表現形式
    • 由0,1,…7組成。以0開頭
  • C:十進制的數據表現形式
    • 由0,1,…9組成。整數默認是十進制的
  • D:十六進制的數據表現形式
    • 由0,1,…9,a,b,c,d,e,f(大小寫均可)。以0x開頭

02.04_Java語言基礎(任意進制到十進制的轉換圖解)(了解)

  • A:任意進制到十進制的轉換原理
    • 系數:就是每一位上的數據。
    • 基數:X進制,基數就是X。
    • 權:在右邊,從0開始編號,對應位上的編號即為該位的權。
    • 結果:把系數*基數的權次冪相加即可。
Paste_Image.png

02.05_Java語言基礎(十進制到任意進制的轉換圖解)(了解)

  • A:十進制到任意進制的轉換原理
    • 除積倒取余
Paste_Image.png

02.06_Java語言基礎(快速的進制轉換法)(了解)

  • A:8421碼及特點
    • 8421碼是中國大陸的叫法,8421碼是BCD代碼中最常用的一種。在這種編碼方式中每一位二值代碼的1都是代表一個固定數值,把每一位的1代表的十進制數加起來,得到的結果就是它所代表的十進制數碼。
  • B:通過8421碼的方式進行二進制和十進制的相互轉換
  • C:二進制到八進制的簡易方式
  • D:二進制到十六進制的簡易方式

02.07_Java語言基礎(原碼反碼補碼)(了解)

  • A:為什么要學習原碼反碼補碼?
    • 后面要學習強制類型轉換,如果不知道有原反補會看不懂結果
  • B:有符號數據表示法的幾種方式
    • 原碼
      • 就是二進制定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其余位表示數值的大小。
      • 通過一個字節,也就是8個二進制位表示+7和-7
      • 0(符號位) 0000111
      • 1(符號位) 0000111
    • 反碼
      • 正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
    • 補碼
      • 正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。
Paste_Image.png

02.09_Java語言基礎(變量的概述及格式)(掌握)

  • A:什么是變量
    • 在程序執行的過程中,在某個范圍內其值可以發生改變的量
  • B:變量的定義格式
    • 數據類型 變量名 = 變量值;
  • C:為什么要定義變量
    • 用來不斷的存放同一類型的常量,并可以重復使用

02.10_Java語言基礎(數據類型的概述和分類)(掌握)

  • A:為什么有數據類型
    • Java語言是強類型語言,對于每一種數據都定義了明確的具體數據類型,在內存中分配了不同大小的內存空間
  • B:Java中數據類型的分類
    • 基本數據類型
    • 引用數據類型
      • 面向對象部分講解
  • C:基本數據類型分類(4類8種)
    • 整數型
      • byte 占一個字節 -128到127
      • short 占兩個字 -215~215-1
      • int 占四個字節 -231~231-1
      • long 占八個字節 -263~263-1
    • 浮點型
      • float 占四個字節 -3.403E38~3.403E38 單精度
      • double 占八個字節-1.798E308~1.798E308 雙精度
    • 字符型
      • char 占兩個字節 0~65535
    • 布爾型
      • boolean
        • boolean理論上是占八分之一個字節,因為一個開關就可以決定是true和false了,但是java中boolean類型沒有明確指定他的大小

02.11_Java語言基礎(定義不同數據類型的變量)(掌握)

  • A:案例演示
int i = 30; 
long x = 8888888888L;  //整數默認是int類型, 如果整數很大,一定后面加L
float f = 12.3F; //小數默認是double,如果使用float,最好習慣加F
double d = 33.4;

02.13_Java語言基礎(數據類型轉換之隱式轉換)(掌握)

  • 取值范圍小的數據類型與取值范圍大的數據類型進行運算,會先將小的數據類型提升為大的,再運算

02.14_Java語言基礎(數據類型轉換之強制轉換)(掌握)

  • A:強制轉換問題
    • int a = 10;
    • byte b = 20;
    • b = a + b;
  • B:強制轉換的格式
    • b = (byte)(a + b);
  • C:強制轉換的注意事項
    • 如果超出了被賦值的數據類型的取值范圍得到的結果會與你期望的結果不同

02.15_Java語言基礎(面試題之變量相加和常量相加的區別)(掌握)

  • A:案例演示
    • 面試題:看下面的程序是否有問題,如果有問題,請指出并說明理由。
    • byte b1 = 3;
    • byte b2 = 4;
    • byte b3 = b1 + b2;
      • 從兩方面去回答這個題
      • b1和b2是兩個變量,變量里面存儲的值都是變化的,所以在程序運行中JVM是無法判斷里面具體的值
      • byte類型的變量在進行運算的時候,會自動類型提升為int類型
    • byte b4 = 3 + 4;
      • 3和4都是常量,java有常量優化機制,就是在編譯的的時候直接把3和4的結果賦值給b4了

02.16_Java語言基礎(long與float的取值范圍誰大誰小)(了解)

  • 進行混合運算的時候,byte,short,char不會相互轉換,都會自動類型提升為int類型,其他類型進行混合運算的是小的數據類型提升為大的
    • byte,short,char -- int -- long -- float -- double

    • long: 8個字節

    • float:4個字節

    • IEEE754

    • 4個字節是32個二進制位

    • 1位是符號位

    • 8位是指數位

    • 00000000 11111111

    • 0到255

    • 1到254

    • -126到127

    • 23位是尾數位

    • 每個指數位減去127

    • A:它們底層的存儲結構不同。

    • B:float表示的數據范圍比long的范圍要大

      • long:2^63-1
      • float:3.410^38 > 210^38 > 28^38 = 22338 = 2*2^114 > 2^63-1

02.18_Java語言基礎(char數據類型)(掌握)

  • A:char c = 97; 0到65535
  • B:Java語言中的字符char可以存儲一個中文漢字嗎?為什么呢?
    • 可以。因為Java語言采用的是Unicode編碼。Unicode編碼中的每個字符占用兩個字節。中文也是占的兩個字節
    • 所以,Java中的字符可以存儲一個中文漢字

02.19_Java語言基礎(算術運算符的基本用法)(掌握)

  • A:什么是運算符
    • 就是對常量和變量進行操作的符號。
  • B:運算符的分類
    • 算術運算符,賦值運算符,比較(關系或條件)運算符,邏輯運算符,位運算符,三目(元)運算符
  • C:算數運算符有哪些
    • +,-,*,/,%,++,--
  • D:注意事項:
    • a:+號在java中有三種作用,代表正號,做加法運算,字符串的連接符
    • b:整數相除只能得到整數。如果想得到小數,必須把數據變化為浮點數類型
    • c:/獲取的是除法操作的商,%獲取的是除法操作的余數
    • %運算符
      • 當左邊的絕對值小于右邊絕對值時,結果是左邊
      • 當左邊的絕對值等于右邊或是右邊的倍數時,結果是0
      • 當左邊的絕對值大于右邊絕對值時,結果是余數
      • %運算符結果的符號只和左邊有關系,與右邊無關
      • 任何一個正整數%2結果不是0就是1可以用來當作切換條件

02.20_Java語言基礎(算術運算符++和--的用法)(掌握)

  • A:++,--運算符的作用
    • 自加(++)自減(--)運算
    • ++:自加。對原有的數據進行+1
    • --:自減。對原有的數據進行-1
    • a:單獨使用:
      • 放在操作數的前面和后面效果一樣。(這種用法是我們比較常見的)
    • b:參與運算使用:
      • 放在操作數的前面,先自增或者自減,然后再參與運算。
      • 放在操作數的后面,先參與運算,再自增或者自減。

02.21_Java語言基礎(算術運算符++和--的練習)(掌握)

  • A:案例演示

    • 請分別計算出a,b,c的值?
    •   int a = 10;
        int b = 10;
        int c = 10;
      
        a = b++;        
        c = --a;            
        b = ++a;        
        a = c--;            
      
  • B:案例演示

    • 請分別計算出x,y的值?

        int x = 4;
        int y = (x++)+(++x)+(x*10);
      
  • C:面試題

    • byte b = 10;
    • b++;
    • b = b + 1;
    • 問哪句會報錯,為什么

02.22_Java語言基礎(賦值運算符的基本用法)(掌握)

  • A:賦值運算符有哪些
    • a:基本的賦值運算符:=

      • 把=右邊的數據賦值給左邊。
    • b:擴展的賦值運算符:+=,-=,*=,/=,%=

      • += 把左邊和右邊做加法,然后賦值給左邊。

02.23_Java語言基礎(賦值運算符的面試題)(掌握)

  • A:案例演示
    • 面試題:看下面的程序是否有問題,如果有問題,請指出并說明理由。
    • short s=1;s = s+1;
    • short s=1;s+=1;

02.24_Java語言基礎(關系運算符的基本用法及其注意事項)(掌握)

  • A:關系運算符有哪些(比較運算符,條件運算符)
    • ==,!=,>,>=,<,<=
  • 注意事項:
    • 無論你的操作是簡單還是復雜,結果是boolean類型。

    • "=="不能寫成"="。

END。
我是小侯爺。
在魔都艱苦奮斗,白天是上班族,晚上是知識服務工作者。
如果讀完覺得有收獲的話,記得關注和點贊哦。
非要打賞的話,我也是不會拒絕的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,362評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,577評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,486評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,852評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,600評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,944評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,944評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,108評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,652評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,385評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,616評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,111評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,798評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,205評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,537評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,334評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,570評論 2 379

推薦閱讀更多精彩內容

  • Win7下如何打開DOS控制臺? a:開始--所有程序--附件--命令提示符 b:開始--搜索程序和文件--cmd...
    逍遙嘆6閱讀 1,610評論 4 12
  • 1 關鍵字 1.1 關鍵字的概述 Java的關鍵字對java的編譯器有特殊的意義,他們用來表示一種數據類型,或...
    哈哈哎呦喂閱讀 670評論 0 0
  • ?1 C語言程序的結構認識 用一個簡單的c程序例子,介紹c語言的基本構成、格式、以及良好的書寫風格,使讀者對c語...
    CONLYOUC閱讀 8,730評論 9 66
  • 姥姥,已經九十多歲高齡了,目光依舊如鷹般的有神和凌厲,葉玄霜從小到大都不敢看姥姥的眼睛,那是一雙能讓人冷入骨髓的雙...
    霽月冬曉閱讀 1,007評論 13 8
  • 1.每日計劃堅持了一周逐步迭代,感覺形成了思維模塊,可以養成習慣。5個why:因為有一個靠譜的模板,并且模板內的關...
    爽妹紙閱讀 180評論 0 0