Java生成1個長度為10的存儲int類型元素的數組,以隨機的方式為數組元素賦值且其值不得重復,能夠打印其中最大的數組元素的值和索引。
Main文件
import java.util.Random;
public class Main {
public static void main(String[] args) {
int array[];
array = new int[10];
p:for(int i = 0; i < 10;){ // 表達式 3 為空
int value = make_random(); // 生成隨機數
for(int m = 0; m < i; m++){ // 判斷是否有重復
if(value == array[m]){ // 如果有重值
continue p; // 進行 p語塊 下一次循環
}
}
array[i] = value; // 給數組賦值
i++; // 數組下標值 + 1
}
ArrayMessage(array); // 輸出隨機生成的數組
Max_And_Min(array); // 輸出最大值和其索引
}
/**
* 生產隨機數
* @return
*/
public static int make_random(){
Random rnd = new Random(); // 實例化一個對象
int tmp = rnd.nextInt(10); // 生成100以內的隨機數
return tmp; // 返回隨機數
}
/**
* 輸出數組信息
* @param array
*/
public static void ArrayMessage(int array[]){
System.out.print("生成的隨機數組為:\n[");
for(int i = 0; i < 9; i++){
System.out.print(array[i] + ",");
}
System.out.println(array[9] + "]");
}
/**
* 輸出數組的最大值及其索引
* @param array
*/
public static void Max_And_Min(int array[]){
int max = array[9]; // 定義最大值的初值為數組的任一個元素,這樣可以減少比較次數
int mark = 9; // 定義最大值的索引初值為該元素的索引;
for(int i = 0; i < 10; i++){ // 遍歷數組的所有
if(array[i] >= max){ // 如果某個元素大於等於最大值
max = array[i]; // 把該元素的設為最大值
mark = i; // 把該元素的索引賦給mark
}
}
System.out.print("其中數組元素的最大值為:" + max + " , 索引為:" + mark);
}
}
控制台輸出: