JAVA隨機(jī)打亂數(shù)組順序的方法
本文實(shí)例講述了JAVA隨機(jī)打亂數(shù)組順序的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
public class RandomSort {
private Random random = new Random();
//數(shù)組大小
private static final int SIZE = 10;
//要重排序的數(shù)組
private int[] positions = new int[SIZE];
public RandomSort() {
for(int index=0; index<SIZE; index++) {
//初始化數(shù)組,以下標(biāo)為元素值
positions[index] = index;
}
//順序打印出數(shù)組的值
printPositions();
}
//重排序
public void changePosition() {
for(int index=SIZE-1; index>=0; index--) {
//從0到index處之間隨機(jī)取一個(gè)值,跟index處的元素交換
exchange(random.nextInt(index+1), index);
}
printPositions();
}
//交換位置
private void exchange(int p1, int p2) {
int temp = positions[p1];
positions[p1] = positions[p2];
positions[p2] = temp; //更好位置
}
//打印數(shù)組的值
private void printPositions() {
for(int index=0; index<SIZE; index++) {
System.out.print(positions[index]+" ");
}
System.out.println();
}
public static void main(String[] args) {
RandomSort rs = new RandomSort();
rs.changePosition();
rs.changePosition();
rs.changePosition();
}
}
希望本文所述對(duì)大家的Java程序設(shè)計(jì)有所幫助。
相關(guān)文章
java加密MD5實(shí)現(xiàn)及密碼驗(yàn)證代碼實(shí)例
這篇文章主要介紹了java加密MD5實(shí)現(xiàn)及密碼驗(yàn)證代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12springboot2?使用activiti6?idea插件的過(guò)程詳解
這篇文章主要介紹了springboot2?使用activiti6?idea插件,本文通過(guò)截圖實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03MyBatis的注解使用、ORM層優(yōu)化方式(懶加載和緩存)
這篇文章主要介紹了MyBatis的注解使用、ORM層優(yōu)化方式(懶加載和緩存),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10SpringBoot 項(xiàng)目中的圖片處理策略之本地存儲(chǔ)與路徑映射
在SpringBoot項(xiàng)目中,靜態(tài)資源存放在static目錄下,使得前端可以通過(guò)URL來(lái)訪問(wèn)這些資源,我們就需要將文件系統(tǒng)的文件路徑與URL建立一個(gè)映射關(guān)系,把文件系統(tǒng)中的文件當(dāng)成我們的靜態(tài)資源即可,本文給大家介紹SpringBoot本地存儲(chǔ)與路徑映射的相關(guān)知識(shí),感興趣的朋友一起看看吧2023-12-12Spring?MVC異步上傳、跨服務(wù)器上傳和文件下載功能實(shí)現(xiàn)
這篇文章主要介紹了Spring?MVC異步上傳、跨服務(wù)器上傳和文件下載功能實(shí)現(xiàn),本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07Spring Boot 開(kāi)發(fā)私有即時(shí)通信系統(tǒng)(WebSocket)
本文利用Spring Boot作為基礎(chǔ)框架,Spring Security作為安全框架,WebSocket作為通信框架,實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)聊天和群聊天2017-04-04使用socket進(jìn)行服務(wù)端與客戶端傳文件的方法
這篇文章主要介紹了使用socket進(jìn)行服務(wù)端與客戶端傳文件的方法,需要的朋友可以參考下2017-08-08Java簡(jiǎn)單計(jì)時(shí)的實(shí)現(xiàn)案例(可以用來(lái)限時(shí)循環(huán))
這篇文章主要介紹了Java簡(jiǎn)單計(jì)時(shí)的實(shí)現(xiàn)案例(可以用來(lái)限時(shí)循環(huán)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08maven如何動(dòng)態(tài)統(tǒng)一修改版本號(hào)的方法步驟
這篇文章主要介紹了maven如何動(dòng)態(tài)統(tǒng)一修改版本號(hào)的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12