A:Arrays類概述
針對陣列進行操作的工具類。
提供了排序,查詢等功能。
B:成員方法
public static String toString(int[] a)
public static void sort(int[] a)
public static int binarySearch(int[] a,int key)
static boolean equals(int[] a, int[] a2) 比較兩個陣列中的元素,是否一樣
static int[] copyOf(int[] original, int newLength) 複製舊陣列中的元素到一個新的陣列中,新的陣列長度是newLength 從0開始複製舊陣列
static int[] copyOfRange(int[] original, int from, int to) 複製舊陣列中的指定範圍間的幾個元素到新陣列中
C:案例演示
通過Arrays類的功能來進排序和查詢
A:原始碼解析
public static String toString(int[] a)
B:原始碼解析
public static int binarySearch(int[] a,int key)
package org.westos.java16;import java.util.Arrays;/*A:原始碼解析
public static String toString(int[] a)
B:原始碼解析
public static int binarySearch(int[] a,int key)*/publicclassTest12{publicstaticvoidmain(String[] args){int[] arr={1,1,5,2};
System.out.println(arrString(arr));//[1,1,5,2]
System.out.println(Arrays.toString(arr));//[1, 1, 5, 2]
System.out.println(Arrays.binarySearch(arr,5));//2}publicstatic String arrString(int[] arr){if(arr==null){return null;}int max=arr.length-1;if(max==-1){return"[]";}
StringBuffer stringBuffer =newStringBuffer("[");for(int i =0;; i++){
stringBuffer.append(arr[i]);if(i==max){return stringBuffer.append("]").toString();}
stringBuffer.append(",");}}publicstatic String toString(int[] a){if(a == null)return"null";int iMax = a.length -1;if(iMax ==-1)return"[]";
StringBuilder b =newStringBuilder();
b.append('[');for(int i =0;; i++){
b.append(a[i]);if(i == iMax)return b.append(']').toString();
b.append(", ");}}privatestaticintbinarySearch0(int[] a,int fromIndex,int toIndex,int key){int low = fromIndex;int high = toIndex -1;while(low <= high){int mid =(low + high)>>>1;int midVal = a[mid];if(midVal < key)
low = mid +1;elseif(midVal > key)
high = mid -1;elsereturn mid;// key found}return-(low +1);// key not found.}}
三、基本型別包裝類的概述
A: 需求:
a:將100轉換成二進位制 , 八進位制 , 十六進位制
b:判斷一個數是否在int的範圍內
B:為什麼會有基本型別包裝類
為了對基本資料型別進行更多的操作,更方便的操作,java就針對每一種基本資料型別提供了對應的類型別.
C:常用操作: 常用的操作之一:用於基本資料型別與字串之間的轉換。
D:基本型別和包裝類的對應
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
四、Integer類的概述和構造方法
A:Integer類概述
通過JDK提供的API,檢視Integer類的說明
Integer 類在物件中包裝了一個基本型別 int 的值,
該類提供了多個方法,能在 int 型別和 String 型別之間互相轉換,
還提供了處理 int 型別時非常有用的其他一些常量和方法
B:構造方法
public Integer(int value)
public Integer(String s) //要個一個字面上是數字的字串,如果不是就會報錯
C:案例演示
使用構造方法建立物件
package org.westos.java16;/*A:Integer類概述
通過JDK提供的API,檢視Integer類的說明
Integer 類在物件中包裝了一個基本型別 int 的值,
該類提供了多個方法,能在 int 型別和 String 型別之間互相轉換,
還提供了處理 int 型別時非常有用的其他一些常量和方法
B:構造方法
public Integer(int value)
public Integer(String s) //要個一個字面上是數字的字串,如果不是就會報錯
C:案例演示
使用構造方法建立物件*/publicclassTest2{publicstaticvoidmain(String[] args){//Integer integer = new Integer(); //沒有提供無參構造方法,只提供了有參構造方法
Integer integer =newInteger(5);int i = integer.intValue();
System.out.println(i);//5
Integer integer1 =newInteger('a');
System.out.println(integer1);//97/* Integer integer2 = new Integer("a"); //NumberFormatException
System.out.println(integer2);*/
Integer integer2 =newInteger("123");
System.out.println(integer2);//123}}