Java學習第四天


1.數組: java.lang.ArrayIndexOutOfBoundsException:5 下標越界異常
    java.lang.NullPointerException 空指針異常
    arr.length獲取數組長度
    數組存儲的是多個數,數據的操做離不開循環
2數組初始化:int[] arr=new int[]{2,3,4,5};
        int[] arr=new int[7];
                       int[] arr={1,2,3,4};
    數組的長度是固定的,數組的內存是連續的java

3.數組的Arrays函數算法

  (使用Arrays函數要import java.util.Arrays;)數組

  int[] b=Arrays.copyOf(a,1);//第二個參數爲複製指定個數的原數組元素個數到新的數組中,即新數組的長度,優勢是不會改變原數組
  int[] c=Arrays.copyOfRange(a,1,3);//包括起始下標,不包括結束下標,優勢是不會改變原數組
  Arrays.sort(數組名);//jdk中已經存在的排序方法,對數組進行排序,會改變原數組

4.排序:選擇排序
    冒泡排序
    插入排序
    必須熟練掌握的排序算法:選擇排序、冒泡排序
    1.選擇排序:
    依次固定每一個下標,讓後面全部的數分別和固定下標中的數據依次對比
    2.冒泡排序
    下標相鄰的兩兩比較函數

 

5.查找:
  普通方式:一個一個比較
       缺點:效率低
  二分法:前提:數組是有序的
      先找到中間下標的數據,拿着查找的數和這個中間的數比較,若是比他大,則對中間數右邊的數組進行二分法查找,反之左邊spa

6.進制轉換(部分)指針

十進制轉二進制:數組接收餘數
十進制轉十六進制:
int num=60;
int n1=num&15;
int n2=num>>>4;排序

7.數組中的易錯點:內存

1.在定義數組時可能只記住定義數組的類型而忘記長度,數組是事先就要在內存中開闢空間,因此必須在定義時或在程序運行前定義數組的長度(初學者易犯)io

2.數組的類型與要插入數組的元素的類型不匹配(我出現過char型的數組要放入String的數據出錯,自動類型轉換的數據應該不會出現這種錯誤)效率

相關文章
相關標籤/搜索