1. 程式人生 > 遊戲 >傳地鐵、威客島等經典地圖迴歸《戰地2042》

傳地鐵、威客島等經典地圖迴歸《戰地2042》

解除安裝JDK

  1. 刪除java的安裝目錄
  2. 刪除JAVA_HOME
  3. 刪除path下關於Java的目錄
  4. java -version

什麼是位元組

  • 位(bit):是計算機內部資料儲存的最小單位,11001100是一個八位二進位制數。

  • 位元組(byte):是計算機中資料處理的基本單位,習慣上是大寫B來表示。

  • 1B(byte,位元組)=8bit(位)

  • 字元:是指計算機中使用的字母,數字,字和符號

  • 1bit表示1位

  • 1Byte表示一個位元組1B=8b

  • 1024B=1KB

  • 1024KB=1M

  • 1024M=1G

變數

  • 變數是什麼:就是可以變化的量!

  • Java是一種強型別語言,每個變數都必須宣告其型別

  • Java變數是程式中最基本的儲存單元,其要素包括變數名,變數型別和作用域。

    type varname [=value] [{,varName[=value]}];

    //資料型別 變數名 = 值; 可以使用逗號隔開來宣告多個變數。

注意事項:

  • 每個變數都有型別,型別可以是基本型別,也可以是引用型別。
  • 變數名必須是合法的識別符號
  • 變數宣告是一條完整的語句,因此每個宣告都必須以分號結束。

變數的命名規則

  • 所有變數、方法、類名:見名知意
  • 類成員變數:首字母小寫和駝峰原則:monthSalary
  • 區域性變數:首字母小寫和駝峰原則
  • 常量:大寫字母和下劃線:MAX_VALUE
  • 類名:首字母大寫和駝峰原則:Man,GoodMan
  • 方法名:首字母小寫和駝峰原則:run(),runRun()

運算子

Java語言支援如下運算子:

  • 算術運算子:+,-,*,/,%,++,--
  • 賦值運算子=
  • 關係運算符:>,<,>=,<=,==,!=,instanceof
  • 邏輯運算子:&&,||,!
  • 位運算子:&,|,^,~,>>,<<,>>>
  • 條件運算子:? :
  • 擴充套件賦值運算子:+=,-=,*=,/=

轉義字元

  1. 八進位制轉義序列:\ +1到3位5數字;範圍'\000'~'\377' \0:空字元

  2. Unicode轉義字元:\u + 四個十六進位制數字;0~65535 \u0000:空字元

  3. 特殊字元:就3個

    ":雙引號

    ':單引號

    \:反斜線

  4. 控制字元:5個

'單引號字元

\反斜槓字元

\r回車

\n換行

\f走紙換頁

\t橫向跳格

\b退格

點的轉義:.==>u002E

美元符號的轉義:$==>u0024

乘方符號的轉義:^==>u005E

左大括號的轉義:{==>u007B

左方括號的轉義:[==>u005B

左圓括號的轉義:(==>u0028

豎線的轉義:| ==>u007C

右圓括號的轉義:) ==> u0029

星號的轉義 : * ==> u002A

加號的轉義:+==> u002B

問號的轉義:?==> u003F

反斜槓的轉義:==> u005C

scanner物件

next():

  1. 一定要讀到有效字元後才可以結束輸入
  2. 對輸入有效字元之前遇到的空白,next()方法會自動將其去掉。
  3. 只有輸入有效字元後才將其後面面輸入的空白作為分隔符或者結束符。
  4. next()不能得到帶有空格的字串。

nextLine():

  1. 以Enter為結束符,也就是說nextLine()方法返回的是輸入回車之前的所有字元。
  2. 可以獲得空白。

結構

順序結構

選擇結構

  • if單選擇結構

    判斷是否可行,才去執行

    if(布林表示式){
    	//如果布林表示式為true將執行的語句
    }
    
  • if雙選擇結構

    需要兩個判斷,就用if-else結構

    if(布林表示式){
    	//如果布林表示式的值為true
    }else{
    	//如果布林表示式的值為false
    }
    
  • if多選擇結構

    有時候不止兩個選擇,需要多選擇結構

    if(布林表示式1){
    	//如果布林表示式1的值為true執行程式碼
    }else if(布林表示式2){
    	//如果布林表示式2的值為true執行程式碼
    }else if(布林表示式3){
    	//如果布林表示式3的值為true執行程式碼
    }else{
    	/如果以上布林表示式都不為true執行程式碼
    }
    
  • 巢狀的if結構

    多個if-else語句巢狀使用

  • switch多選擇結構

    • switch case語句判斷一個變數與一系列中某個值是否相等,每個值 稱之為一個分支。

    • switch語句中的變數型別可以是:

      • byte、short、int、char
      • 從java SE7開始
      • switch支援字串String型別了
      • 同時case標籤必須為字串常量或字面量。
switch(expression){
    case value:
        //語句
    	break;//可選
    case value:
        //語句
        break;//可選
    //你可以有任意數量的case語句
    default://可選
        //語句
}

迴圈結構

while迴圈

  • while是最 基本的迴圈,它的結構為:
while(布林表示式){
    //迴圈內容
}
  • 只要布林表示式為true,迴圈會一直執行下去。
  • 我們大多數情況是會讓迴圈停止下來,我們需要一個讓表示式失效的方式來結束迴圈。
  • 少部分情況需要一直執行,比如伺服器的請求響應監聽等
  • 迴圈條件一直為true就會造成無限迴圈【死迴圈】,我們正常的業務程式設計中應該儘量避免死迴圈。會影響程式效能或者造成程式卡死崩潰!

do...while迴圈

  • 對於while語句而言,如果不滿足條件,則不能進入迴圈。但有時候我們需要即使不滿足條件也要執行一次。
  • do...while迴圈和while迴圈相似,不同的是,do...while迴圈至少會執行一次。
do{
    //程式碼語句
}while(布林表示式);
  • while和do...while的區別
    • while先判斷後執行,do...while是先執行後判斷!
    • do...while總是保證迴圈體會被至少執行一次

,這是與while迴圈的本質區別。

For迴圈

  • for迴圈使得一些迴圈結構更簡單

  • for迴圈語句是支援迭代的一種通用結構,最有效、最靈活的迴圈結構。

  • for迴圈執行的次數是在執行前就確定的。語法格式如下:

    for(初始化;布林表示式;更新){
        //程式碼語句
    }
    

    練習:

    1. 計算0到100之間奇數和偶數的和
    2. 用while或for迴圈輸出1-1000之間能被5整除的數,並且每行輸出3個
    3. 列印九九乘法表

增強for迴圈

  • 瞭解後在陣列中著重使用
  • Java5引入了一種主要用於陣列或集合的增強型for迴圈。
  • Java增強for迴圈語法格式如下:
for(宣告語句:表示式){
    //程式碼句子
}
  • 宣告語句:宣告新的區域性變數,該變數的型別必須和陣列元素的型別匹配。其作用域限定在迴圈語句塊,其值與此時陣列元素的值相等。
  • 表示式:表示式是要訪問的陣列名,或者是返回值為陣列的方法。

break & continue

  • break在任何迴圈語句的主體部分,均可用break控制迴圈的流程。break用於強制退出迴圈,不執行迴圈中剩餘的語句。(break語句也在switch語句中使用)
  • continue語句用在迴圈語句體中,用於終止某次迴圈過程,級跳過迴圈體中尚未執行的語句,接著進行下一次是否執行迴圈的判定。
  • 關於goto關鍵字
    • goto關鍵字很早就在程式設計語言中出現,儘管goto仍是Java的一個保留字,但並未在語言中得到正式的使用;Java沒有goto。然而,在break和continue這兩個關鍵字的身上,我們仍然能看出一些goto的影子……帶標籤的break和continue。
    • “標籤”是指後面跟一個冒號的識別符號,例如:label:
    • 對Java來說唯一用到標籤的地方是在迴圈語句之前。而在迴圈之前設定標籤的唯一理由是:我們希望在其中巢狀另一個迴圈,由於break和continue關鍵字通常只中斷當前迴圈,但若隨同標籤使用,它們聚會中斷到存在標籤的地方。