Random類,數組
Random工具類
作用: 產生一個隨機數
使用步驟:
1.導包
import 對應的包
import java.util.Random;
2.創建引用類型變量
數據類型 變量名 = new 數據類型();
Random rd = new Random();
3.調用功能
變量名.功能
產生範圍是[0,n)的隨機整數 , 產生一個包含0,但是不包含n的隨機整數
nextInt(n);
rd.nextInt(n);
Random類的代碼演示:
1 獲取 1-100 之間的隨機數 [1,100] ---> [0,99] + 1 2 publicstatic void main(String[] args) { 3 //創建引用類型變量 4 Random rd = new Random(); 5 //調用功能 6 int num = rd.nextInt(100) + 1; 7 System.out.println("num = "+num); 8 }
數組:
對批量的數據進行存儲和操作
數組存儲的數據的值是可以變化
存儲的批量數據的數據類型必須一樣
數組的定義格式:
格式一: 數據類型[] 數組名; (推薦格式)
格式二: 數據類型 數組名[]; (能識別)
給數組分配內存空間, 對元素賦默認值
兩種形式
第一種: 動態初始化 , 在定義數組的同時給出數組的長度(數組最多能存放元素的個數), 數組元素的默認值由系統指定
第二種: 靜態初始化, 在定義數組的同時給出要存儲的數據, 而數組的長度由系統指定
動態初始化格式:
數據類型[] 數組名 = new 數據類型[M];
數據類型: 元素的數據類型, 兩邊的數據類型要一致.
[] : 數組的標誌, 一個[]代表一維數組 兩個[]二維數組
數組名: 標識符 可以通過數組名來獲取數組的元素
M: 數組的長度, 也就是可以最多存放元素的個數
訪問數組元素格式
數組名[索引值] ----> 數組名[下標] 數組名[角標]
索引值從0開始
最後一個元素的索引值是 n-1
靜態初始化
定義數組的同時 給出指定的值, 數組的長度由系統計算
語法格式:
數據類型[] 數組名 = new 數據類型[]{元素值1,元素值2,...};
簡化格式:
數據類型[] 數組名 = {元素值1,元素值2,...};
異常
數組的越界異常 :java.lang.ArrayIndexOutOfBoundsException: 4
空指針異常:java.lang.NullPointerException
遍歷數組:
逐個的獲取數組的元素
自動獲取數組的長度
數組名.length
遍歷數組代碼演示:
* 求出數字序列 1,3,7,4,5,6中的最大數字
* 定義一個數組存儲上面的數字序列
* int[] arr = {1,3,7,4,5,6};
* 思路:
* 定義一個臨時變量 先存儲0號位元素的值, 順次把臨時變量中的值與元素的值進行比較 ,一旦發現有元素的值比臨時變量中的值大,就把元素中的值
* 賦值給臨時變量, 從頭比到尾,臨時變量中存放的就是最大值
1 public static void main(String[] args) { 2 // 3 int[] arr = {1,3,7,40,5,6}; 4 5 int tmp = arr[0]; 6 7 for(int i = 1;i<arr.length;i++){ 8 //比較 9 if(tmp < arr[i]){ 10 //一旦滿足條件 就賦值 11 tmp = arr[i];// 把元素值 賦值給臨時的tmp 12 } 13 } 14 15 System.out.println("最大值= "+tmp); 16 }
二維數組:
數組元素為一維數組的數組
定義格式:
數據類型[][] 數組名; 推薦格式
數據類型[] 數組名[];
數據類型 數組名[][];
動態初始化
數據類型[][] 數組名 = new 數據類型[M][N];
數據類型: 數組元素的數據類型, 前後一致
[] : 數組的標誌, 兩個[] 表示二維數組
數組名: 標識符 通過數組名可以訪問數組元素
M: 二維數組的長度, 即構成這個二維數組的一維數組的個數
N: 二維數組中,每個一維數組的元素的個數
靜態初始化
數據類型[][] 數組名 = new 數據類型[][]{{元素值1,元素值2,...},{元素值1,元素值2,...},{元素值1,元素值2,...},...};
簡寫格式
數據類型[][] 數組名 = {{元素值1,元素值2,...},{元素值1,元素值2,...},{元素值1,元素值2,...},...};
1 2 3
4 5 6
7 8 9
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}}
訪問二維數組的元素
數組名[索引值1][索引值2]
二維數組的長度
數組名.length
獲取二維數組中 某個以為數組的長度
數組名[索引值].length
二維數組外層循環控制行, 內層循環控制列
Random類,數組