JAVA基礎知識總結2——異常、數組、字符串、包裝類

異常、數組、字符串、包裝類


1.異常:運行期出現的錯誤,觀察錯誤的名字和行號最重要
異常處理:try{可能出現異常的語句}catch(異常類型 對象){異常處理}
            先逮小的異常,再逮大的異常
            重寫方法需要拋出與原方法所拋出異常類型一致或不拋出異常
finally:異常的統一出口,不管是否出現異常,都執行統一的代碼                
throws:在方法定義上使用,表示此方法中不進行異常的處理,而是交給被調用處處理。當調用拋出了異常的方法時,必須寫上異常處理語句。
throw: 指在方法中人爲的拋出一個異常類對象(這個異常類對象可能是自己的實例化或者是拋出已存在的)
Throwable:異常最大的父類,其分爲兩個字類:Exception和Error。
            Exception表示程序處理的異常,Error表示JVM錯誤
RuntimeException類:  是Exception類的子類,其定義的異常可以選擇性的進行處理    


2.數組:
        java語言中聲明數組時不能指定其長度
        如:int a[5]; 這樣聲明一維數組是非法的,
            int[]s = new int[5] 允許的,創建一個大小爲5類型爲int的數組。合法的,這個是先在棧中開一個空間名爲a,然後new再在堆中開闢5個空間。
       對象數組的創建:Integer testInteger = new Integer(5);// 允許的,創建一個值爲5的Integer對象
       數組的拷貝:public static void arraycopy(Object src, int srcPos,Object dest, int destPos, int length)
              用於將數組第srcPos項元素開始的length個元素拷貝到目標數組從destPos項開始的length個位置


3.String類:字符串常量就是String的匿名對象
            String表示不可變的字符序列,字符串一旦定義則不可改變
    實例化方式:開發中使用直接賦值方式
            直接賦值(String str = “字符串”;)會開闢一塊堆內存空間,並且自動保存在對象池中以供下次重複使用
            構造方法(String str = new String(“字符串”);)會開闢兩塊內存空間,不會自動入池,其中一塊作爲垃圾
    字符串相等比較:
            “==”在String中比較的內存地址的數值
            String類中重寫了equals方法,同來進行字符串內容的比較
    String類方法:
            charAT(int index):返回字符串的第index個字符    
            length():返回字符串的長度
            indexOf(String str):返回字符串中出現str的第一個位置
            indexOf(String str, int fromIndex):返回字符串中從fromIndex開始出現str的第一個位置
            equalsIgnoreCase(String another):比較字符串與another是否一樣(忽略大小寫)
            replace(char oldChar,char newChar);在字符串中用newChar字符替換oldChar字符
            substring(int beginIndex) :返回一個新的字符串,它從指定索引處的字符開始,直到此字符串末尾。
            toCharArray():將字符串以字符數組的形式返回
            split(String regex):根據給定的正則表達式的匹配拆分此字符串,將字符串以字符串數組的形式返回
            P520.3  將一個字符串拆成字符串數組,再把每個數組元素轉換成整形變量
                String data = scan.next();     
                String result [] = data.split("");
                int temp = Integer.parseInt(result[i]) ;        
      java.lang.StringBuffer 代表可變的字符序列
           方法:刪除,添加
           StringBuffer類使用append()方法可以完成字符串的連接操作,
           而String類使用“+”完成;



4.包裝類:Java語言是一個面向對象的語言,但是Java中的基本數據類型卻是不面向對象的,因此,在設計類時爲每個基本數據類型設計了一個對應的類進行代表,這樣八個和基本數據類型對應的類統稱爲包裝類。
    用途:  a、作爲和基本數據類型對應的類類型存在,方便涉及到對象的操作。
                 b、包含每種基本數據類型的相關屬性如最大值、最小值等,以及相關的操作方法

                 c、將本類型與其他類型進行轉換;
                 d、將字符串與本類型及包裝類型相互轉換。
  包裝類的使用:

  •   基本數據類型轉換成包裝類(裝箱),包裝類轉換成基本數據類型(裝箱)
  1. Integer i1 = new Integer(100); //方法一
  2. Integer i1 = 100;//方法二
  3. int value = i1;//方法1
  4. int value = i1.intValue();//方法2
  •   包裝類轉換成其他基本數據類型
  1. Integer i = new Integer(100);
  2. double d = i.doubleValue();
  • 基本數據類型轉換成字符串
  • 字符串轉換成基本數據類型

5.equals() 和== 的區別

  • 在Java中,任何類型的數據都可以用 “==”進行比較是不是相等,一般用於基本數據類型的比較,比較器存儲的值是否相等。但是如果用於引用類型的比較,則是比較所指向對象的地址是否相等,在這點上,跟object類提供的equals()方法的作用是一致的。
  • 對於equals()方法
    1) 首先,不能用於基本數據類型的變量之間的比較相等;
    2) 如果沒有對equals方法進行重寫,則比較的是引用類型的變量所指向的對象的地址;
    3) 諸如StringDate等類都對equals方法進行了重寫,比較的是所指向的對象的內容。

 

6.枚舉類型:枚舉定義出了一個類所能使用的若干幾個實例化對象,枚舉可以直接採用“枚舉類型.對象”的方式取得類中的實例化對象進行操作  
        只能取特定值中的一個
        enum關鍵字,使用enum定義的枚舉類型實際上都表示一個類默認繼承了Enum類
        enum Color{
            RED,GREEN,BLUE;
        }
        Color red = Color.RED;
        本程序定義了一個Color的類,同時在類中定義了三種顏色的對象,需要時直接調用即可
        枚舉就是一種簡化的多例設計模式
        枚舉中定義的構造方法不能使用public聲明;枚舉對象必須放在首行
        枚舉中通過values()方法取得沒覺得全部內容
        在枚舉中可以定義構造方法,則再設置枚舉範圍時必須顯式的調用構造方法
        
        
Alt+/:進行代碼提示
Ctrl+l:爲錯誤的代碼給出糾正方案
Ctrl+/:使用單行註釋

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章