Java學習之隨堂筆記系列——day13

1 基本數據類型的包裝類
    1、4類8中基本數據類型對應的包裝類分別是什麼?
        包裝類:每一種基本數據類型都會對應一個引用數據類型的類,這個類就叫做這個基本數據類型的包裝類
        基本數據類型和包裝類的對應關係:
            byte            Byte
            short           Short
            int             Integer(特殊,記住)
            long            Long
            float           Float
            double          Double
            char            Character(特殊,瞭解)
            boolean         Boolean
    2、什麼是自動裝箱和自動拆箱?
        自動裝箱:int類型數據能自動轉換成Integer類型。Integer i=100;是可以的。
        自動拆箱:Integer類型數據能自動轉換成int類型。int num=i;也是可以的。
    3、int和String相互轉換(重點)
        int----->String:
            方式一:
                String s=String.valueOf(int i);
            方式二:
                String s=num+"";
        String----->int
            int i = Integer.parseInt("120");
        注意事項:轉換的字符串必須是整數形式的字符串,否則會出現如下異常:java.lang.NumberFormatException: For input string: "itheima"
        下面的做法是錯誤:
            int i1 = Integer.parseInt("itheima");

        //擴展,字符串小數轉換成double或者float
        double d = Double.parseDouble("13.14");
        System.out.println(d);

        float f = Float.parseFloat("5.20");
        System.out.println(f);

    總結:
        1、掌握基本數據類型對應的包裝類對象,有兩個特殊(Integer和Character),其他的首字母變大寫就是包裝類對象。
        2、掌握int和String相互轉換。

2 日期時間類:學習這些類的常用構造方法和成員方法
    1、 Date類:表示日期和時間
            構造方法:重點掌握空參構造
                Date​():創建一個當前系統日期和時間的Date對象。(重要)
                Date(long millis):創建一個指定時間的Date對象,從1970年1月1日 08時00分00秒000毫秒開始加上給定的毫秒值。中國屬於東八區
            成員方法:
                long getTime():獲取Date對應時間的毫秒值
                應用場景:用於計算時間。
                需求:將時間定位到明天的此時此刻。
                    public class DateDemo2 {
                        public static void main(String[] args) {
                            //創建Date對象,當前時間
                            Date d1=new Date();
                            System.out.println(d1);

                            //將d1轉換成毫秒值
                            long time = d1.getTime();
                            //將毫秒值加 + 24*60*60*1000
                            long newTime=time+24*60*60*1000;
                            //重新創建Date對象,傳遞計算後的毫秒值就是明天的此時此刻
                            Date d2=new Date(newTime);
                            System.out.println(d2);
                        }
                    }
    2、 SimpleDateFormat類:格式化或者解析日期時間
            構造方法:
                public SimpleDateFormat​(String pattern):使用參數給定的模式創建格式化對象
                模式:
                    年:y
                    月:M
                    日:d
                    時:H/h
                    分:m
                    秒:s
                    毫秒:S
                    星期:E
                常用的組合模式:yyyy-MM-dd HH:mm:ss 、 yyyy年MM月dd日 HH:mm:ss

            成員方法:
                String format​(Date date): 將日期格式化成日期/時間字符串。
                Date parse​(String source):從給定字符串的開始解析文本以生成日期。
                注意:如果字符串和SimpleDateFormat構造中的模式不一致,就會出現ParseException解析異常。

    3、 Calendar類:日曆類
            獲取對象:通過靜態方法獲取對象
                Calendar c=Calendar.getInstance();
            成員方法:
                int    get​(int field):返回給定日曆字段的值。
                    可傳遞的字段(靜態常量)有:YEAR  MONTH   DATE   HOUR   MINUTE   SECOND
                    例如:獲取年:int year=c.get(Calendar.YEAR)
                    注意:月份是從0開始的,我們獲取的月份要+1;
                void set​(int year, int month, int date):設置年月日,月份是從0開始
                void add​(int field, int amount):對日期和時間執行加減運算。給的字段如果是YEAR,那麼就表示加減幾年,...
    總結:
        1、如果只是像獲取當前日期和時間,那麼就使用Date對象。Date d=new Date();
        2、如果需要對日期Date對象進行格式化,那麼就需要使用SimpleDateFormat對象
        3、如果需要對年月日進行設置和加減操作(換一句話說就是要操作日期),那麼選擇Calendar日曆對象。

3 異常處理
    概念:
        異常的頂層父類:Throwable,這個類有兩個子類分別是Error和Exception。

        Error錯誤和Exception異常的區別?
            Error錯誤一旦出現就無法避免,只能通過修改程序的源代碼來解決。
            Exception異常是可能出現的問題,可以避免的。例如我們之前解析時間字符串的時候就有一個異常

        異常又分爲運行期異常(RuntimeException)和編譯期異常(非RuntimeException):
            運行期異常(RuntimeException:在程序編譯的時候不會出現紅色的報錯下劃線,運行之後如果有問題才報錯。例如:索引越界異常
            編譯期異常(非RuntimeException):在程序編譯的時候會出現紅色的報錯下劃線,我們必須要處理這種異常。例如:ParseException解析異常

    1、異常處理的兩種方式(掌握)
        jvm默認處理方案;中斷處理,從出現異常的那一行代碼開始,後面的代碼都不執行了。jvm會將異常信息以紅色字體展示到控制檯。

        方式1:try...catch...catch...處理,快捷鍵:ctrl+alt+t選擇try/catch
            try{
                //可能出現異常的代碼
            }catch(異常類型 異常對象名){
                //處理異常的代碼
            }catch(異常類型 異常對象名){
                //處理異常的代碼
            }...
            後續代碼...
            執行流程:
                1、執行try中的代碼,如果try中沒有發生異常,那麼將不會執行任何catch中的代碼,直接執行try...catch後面的代碼
                2、如果try中出現了異常,那麼jvm會創建異常對象,匹配catch中定義的異常類型,執行對應catch中的代碼。執行完成之後繼續執行
                    try...catch後面的代碼
    2、自定異常(瞭解)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章