溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java核心技術(shù)鞏固篇之如何理解控制流程與大數(shù)值及數(shù)組

發(fā)布時間:2021-10-25 14:32:49 來源:億速云 閱讀:124 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“Java核心技術(shù)鞏固篇之如何理解控制流程與大數(shù)值及數(shù)組”,在日常操作中,相信很多人在Java核心技術(shù)鞏固篇之如何理解控制流程與大數(shù)值及數(shù)組問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java核心技術(shù)鞏固篇之如何理解控制流程與大數(shù)值及數(shù)組”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

目錄
  • 1. 控制流程

    • 1.1 塊作用域

    • 1.2 條件語句

  • 2. 大數(shù)值

    • 3. 數(shù)組

      • 3.1 命令行參數(shù)

    1. 控制流程

    1.1 塊作用域

    【易錯點】: 不能在嵌套的兩個塊中聲明同名變量,如

    public static void main(String[] args){
        int n;
        ...
        {
            int n; // Error--can't redefine n in inner block
        }
    }

    該代碼由于在嵌套的兩個塊中出現(xiàn)了同名變量,無法通過編譯

    注意:

    在 C++ 中,可以在嵌套的塊中重定義一個變量。在內(nèi)層定義的變量會覆蓋在外層定義的變量。

    1.2 條件語句

    【易錯點】: 在循環(huán)中,檢測兩個浮點數(shù)是否相等需要格外注意,如

    for(double x=0; x!=10; x+=0.1);

    上述循環(huán)不會結(jié)束,因為 0.1 無法精確的用二進(jìn)制表示,所以 x 將從 9.99999999999998 跳到 10.09999999999998。

    【補(bǔ)充點】: switch 語句中的 case 分支語句如果末尾不加 break,其實是一種較危險的情況。所以使用 switch 語句編譯代碼時可以這樣寫 javac -Xlint:fallthrough 文件名.java。這樣寫的話如果某個分支某位缺少 break,編譯器就會報警告。如果你就是需要有些分支后面不加 break,可以為其外圍方法加一個標(biāo)注 @SuppressWarnings("fallthrough"),這樣就不會對方法生成警告。

    【補(bǔ)充點】: Java 沒有 goto 語句,但 break 可以帶標(biāo)簽,可以利用它實現(xiàn)從內(nèi)層循環(huán)跳出的目的。如

    int n;
    read_data:
    while(){
        for(){
            ...
            break read_data;
            ...
        }
    }

    注意:

    該方式只能跳出語句塊,而不能跳入語句塊

    2. 大數(shù)值

    【補(bǔ)充點】: 如果基本的整數(shù)和浮點數(shù)不能滿足需求,可以使用 java.math 包中的兩個類:BigIntegerBigDecinmal。這兩個類可以處理包含任意長度數(shù)字序列的數(shù)值。BigInteger 類實現(xiàn)了任意精度的整數(shù)運(yùn)算,BigDecinmal 實現(xiàn)了任意精度的浮點型數(shù)運(yùn)算

    3. 數(shù)組

    【易錯點】: Java 中的數(shù)組長度不要求是常量,如 new int[n] 會創(chuàng)建一個長度為 n 的數(shù)組。但是確定 n 的值之后就不能改變。

    3.1 命令行參數(shù)

    【補(bǔ)充點】:每一個 Java 應(yīng)用程序都有一個帶 String[] args 參數(shù)的 main 方法。這個參數(shù)表明 main 方法將接受一個字符串?dāng)?shù)組,也就是命令行參數(shù)。如

    public class Message{
        public static void main(String[] args){
            if(args.length==0||args[0].equals("-h")){
                System.out.print("Hello,");
            }else if(args[0].equlas("-g")){
                System.out.print("Goodbye,");
            }
            for(int i=1;i<args.length;i++){
                System.out.print(" "+args[i]);
            }
        }
    }

    如果我們在命令行使用下面這種形式運(yùn)行這個程序:java Message -g cruel world ,將顯示下列信息 Goodbye, cruel world!

    這表明 args 數(shù)組內(nèi)存的內(nèi)容如下:args[0]="-g",args[1]="cruel",args[2]="world"

    注意:

    在 Java 應(yīng)用程序的 main 方法中,程序名并沒有儲存在 args 數(shù)組中

    到此,關(guān)于“Java核心技術(shù)鞏固篇之如何理解控制流程與大數(shù)值及數(shù)組”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

    向AI問一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI