一。一維數組
1.數組的創建三種方式
(1)。數據類型[] 數組名 = new 數據類型[元素個數或數組長度];
int[] arr=new int[4];
//賦值
arr[0]=99;
arr[1]=98;
arr[2]=97;
int sum=0;
for(int i=0;i<arr.length;i++){
sum=sum+arr[i];
}
System.out.println(sum); //求數組中的數的和
(2)。類型[] 數組名 = new 類型[]{元素,元素,……};
String[] brr=new String[]{"abc","456","小紅"};
for(int i=0;i<brr.length;i++){
System.out.println(brr[i]);
}
(3)。類型[] 數組名 = {元素,元素,元素,……}; //一般用的比較多
double[] crr={1.2,3.4,5.6};
double max=crr[0];
for(double i:crr){//遍歷數組
if(i>max){
max=i;
}
}
System.out.println(max);
2.數組越界,空指針異常
數組越界異常,訪問了不存在下標對應的數組織,(數組里有值但訪問的元素超出了范圍)
報錯顯示:ArrayDemo06.java
int[] arr={1,2,5};
System.out.println(arr[3]);
空指針異常,用null調用了方法或屬性,或數組下標(數組無值)
報錯顯示:NullPointerException。
int[] arr=null;
System.out.println(arr[0]);
3.數組遍歷
(1),簡寫遍歷求最值
double[] crr={1.2,3.4,5.6};
double max=crr[0];
for(double i:crr){//遍歷數組,數組可以這么寫
if(i>max){
max=i;
}
}
System.out.println(max);
(2)。正常寫法遍歷求最值
double[] crr={1.2,3.4,5.6};
double max=crr[0];
for(double i=0;i<crr.length;i++){//遍歷數組
if(crr[i]>max){
max=crr[i];
}
}
System.out.println(max);
二。二維數組
1.寫法
(1)數據類型【】【】 數組名=new 數據類型【二維數組長度】【每個元素長度】
定義了一個3*4的二維數組,即二維數組的長度為3,二維數組中的每個元素又是一個長度為4的數組
int[][] arr = new int[3][4];
arr[0][0]=99;
arr[0][1]=100;
arr[2][0]=88;
System.out.println(arr[0][0]);//99
System.out.println(arr[1][0]);//0,默認
System.out.println(arr[0]);//二維數組地址
System.out.println(arr);//一維數組地址
(2)數據類型【】【】 數組名=new 數據類型【二維數組長度】【】
double[][] arr=new double[3][];
double[] arr1={1.2,1.4,1.8};
double[] arr2={7.7,5.6};
double[] arr3={1.3};
arr[0]=arr1;
arr[1]=arr2;
arr[2]=arr3;
System.out.println(arr[0][0]);//輸出1.2
System.out.println(arr[2]);//二維數組地址
(3)數據類型【】【】 數組名={{},{},{}}
int[][] arr = {{1,2},{3,4,5,6},{7,8,9}};
定義了三個元素,這三個元素都是數組,分別為{1,2}、{3,4,5,6}、{7,8,9}
//數組遍歷求和
int[][] arr={{1,2,3},{4,5,6,7},{8,9,10,11}};
int sum=0;
for(int i=0;i<arr.length;i++){
for(int j=0;j<arr[i].length;j++){
sum=sum+arr[i][j];
}
}
System.out.println(sum);
三。數組默認值
四。方法
//類中一般只包含兩種東西,方法和屬性(變量)
//方法中不能寫方法
修飾符 返回值類型 方法名(參數類型 參數名1,參數類型 參數名2,......){
執行語句
………
return 返回值;
}
l 修飾符:方法的修飾符比較多,有對訪問權限進行限定的,有靜態修飾符static,還有最終修飾符final等,這些修飾符在后面的學習過程中會逐步介紹public
l 返回值類型:用於限定方法返回值的數據類型void(不用寫返回值)
l 參數類型:用於限定調用方法時傳入參數的數據類型
l 參數名:是一個變量,用於接收調用方法時傳入的數據
l return關鍵字:用於結束方法以及返回方法指定類型的值
l 返回值:被return語句返回的值,該值會返回給調用者
//打印三個數求平均數
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.println("請輸入第一個數");
int a=sc.nextInt();
System.out.println("請輸入第二個數");
int b=sc.nextInt();
System.out.println("請輸入第三個數");
int c=sc.nextInt();
aa(a,b,c);
}
public static int aa(int x,int y,int z){
int i=(x+y+z)/3;
System.out.println(i);
return i;
}