安卓培訓(java篇)第八天—常用類(下)和異常

來源:互聯網
上載者:User

標籤:double   random   絕對值   java   平方根   

  1. Math數學類:裡面所有方法都是static;

    常用方法:

    abs 絕對值

    sqrt 平方根

    pow(double a, double b) a的b次冪

    max(double a, double b) 比較兩個數中誰大

    min(double a, double b) 比較兩個數中誰小

    random() 返回0.0到1.0的隨機數,但不能取到1

    long round(double a) double型的資料a轉換為long型(四捨五入)


  2. Random偽隨機類(所有的方法都來自Math.random()這個方法)

    常用構造方法:new Random();

    常用方法:nextInt(int i) 0到i-1 傳回型別是int類型;

    注意事項:做項目時,一般用偽隨機類,因為它裡面的方法更靈活;但如果從記憶體角度分析,則考慮選擇Math.random();

     

  3. Date類:java.util.Date:擷取當前系統時間;System.out.println(new Date());此時按照系統的格式;


  4. Format--DateFormat--SimpleDateFormat;表示日期的格式

    SimpleDateFormat常用的構造方法:new SimpleDateFormat(String regx);//日期格式;

    SimpleDateFormat常用的方法:

    format(Date date);返回String類型;

    parse(String str);返回Date類型(把給定的字串str解析成日期格式,必須跟regx一致)

    常用的欄位:

    650) this.width=650;" src="http://note.youdao.com/yws/public/resource/719ed66494263eb983dad4d9b8549a6b/66725B906B6E4DA8B02A7E6D1FDF0AB1/5C086B8046D54E8C8646A8809300788E" style="white-space:normal;border:none;height:auto;" alt="5C086B8046D54E8C8646A8809300788E" />


  5. Calendar是一個抽象類別:

    對象建立:Calendar c=Calendar.getInstance();擷取當前的系統時間

    常用方法:

    get(int a); 返回int類型,a表示欄位

    650) this.width=650;" src="http://note.youdao.com/yws/public/resource/719ed66494263eb983dad4d9b8549a6b/66725B906B6E4DA8B02A7E6D1FDF0AB1/50B5A1D9C39F4ADDAEF0475162C9E4FC" style="border:none;line-height:1.5;height:auto;" alt="50B5A1D9C39F4ADDAEF0475162C9E4FC" />

    650) this.width=650;" src="http://note.youdao.com/yws/public/resource/719ed66494263eb983dad4d9b8549a6b/66725B906B6E4DA8B02A7E6D1FDF0AB1/A429E8C2FE554F3AA33045270094948F" style="border:none;height:auto;" alt="A429E8C2FE554F3AA33045270094948F" />

    650) this.width=650;" src="http://note.youdao.com/yws/public/resource/719ed66494263eb983dad4d9b8549a6b/66725B906B6E4DA8B02A7E6D1FDF0AB1/A1AE66F8922F457DB3BBA1F30289FF86" style="border:none;height:auto;" alt="A1AE66F8922F457DB3BBA1F30289FF86" />

    650) this.width=650;" src="http://note.youdao.com/yws/public/resource/719ed66494263eb983dad4d9b8549a6b/66725B906B6E4DA8B02A7E6D1FDF0AB1/E20AC053358E4B8DA7F213A7B1AF4C7B" style="border:none;height:auto;" alt="E20AC053358E4B8DA7F213A7B1AF4C7B" />



    setTime(Date date);無傳回值;

    getTime(); 返回Date類型;

    add(當前月中的天數,相差的天數);可以輸出前推或後移日期的目前時間


  6. System(從C++演變而來)

    常用方法:

    arrayCopy(5個參數)

    exit(int i);當i=0時,表示正常退出(Java虛擬機器),否則非正常退出;

    currentTimeMillis();可以用它來測試程式的執行時間,注意單位是毫秒;


  7. 異常 即不正常

    分類:編譯時間異常、運行時異常和錯誤之間的理解:

    Error:稱為錯誤,由Java虛擬機器產生並拋出,包括動態連結失敗、虛擬機器錯誤等,程式對其不做處理。

    Exception:所有異常類的父類,其子類對應了各種各樣可能出現的例外狀況事件,一般需要使用者顯示地聲明或捕獲。

    Runtime Exception:一類特殊的異常,如被0除、數組下標超範圍等,其產生比較頻繁,處理麻煩,如果顯示地聲明或捕獲將會對程式可讀性和運行效率影響很大。因此有系統自動檢測並將它們交給卻省的例外處理常式(使用者可不必對其處理)。

    文法:

    try{

        <嘗試捕獲異常資訊>

}catch(異常類  異常對象名){

    <捕獲到異常資訊(printStackTrace();),也可以自訂異常資訊(System.out.println(..))>

}finally{

    <一定會被執行語句塊>

}

public void f() throws 異常類名{} //類似與try{}catch(){},但不能自訂異常資訊

public void f(){

    throw 異常類對象; //此時一定要拋出異常資訊

}

注意事項:

try{

}catch(異常類1){


}catch(異常類2){


}...

異常類2>異常類1, 子類在前,父類在後

異常父類:class Exception extends Throwable{};  

getMessage(); 傳回值來自構造方法裡面的形參;

例:

public void f(){

    try{

        throw new Exception("abc");

    }catch(Exception e){

        System.out.println(e.getMessage());  //輸出abc

    }

}


課後練習:

已知有一個數組int[] a={1,2,3,4,5,6,7,8,9};

(1)利用Random做一個這樣的驗證碼:隨機數1+隨機數2=? 比如:1+2=?

(2)算出它的值,並用Scanner輸入值,判斷輸入的值是否正確;


代碼:

public class YangZhengMa{

    public static void main(String[] args){

        int[] a={1,2,3,4,5,6,7,8,9};

        Scanner s = new Scanner(System.in);

        Random r = new Random();

        for(int i = 0; i < 2; i++){

            a[i] = r.nextInt(9);

        }

       while(true){

           System.out.print(a[0] + "+" + a[1] + "=");

           if(a[0] + a[1] == s.nextInt()){

               System.out.println("OK"); 

               break;   

            }else{

               System.out.println("重輸");

            }

        }    

    }

}






本文出自 “坤” 部落格,請務必保留此出處http://linyingkun.blog.51cto.com/2393912/1575177

安卓培訓(java篇)第八天—常用類(下)和異常

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.