欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java使用多線程找出最大隨機數(shù)

 更新時間:2020年07月20日 09:52:12   作者:ZKeeer  
這篇文章主要為大家詳細介紹了java使用多線程找出最大隨機數(shù),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java用多線程找出最大隨機數(shù)的具體代碼,供大家參考,具體內容如下

問題: 系統(tǒng)隨機生成 10000 個數(shù),構造 5 個線程并利用它們的 Join 方法計算這些隨機數(shù)的最大值。

思路:

1)、定義一個全局變量AllMax來記錄在最大值

2)、自定義myThread類繼承自Thread,重寫run函數(shù)。

3)、Run函數(shù),循環(huán)兩千次,每次產生一個10000以內的隨機數(shù),與AllMax進行比較,若大于AllMax,則立即將AllMax更新。

4)、實例化MyThread,創(chuàng)建五個線程,同步執(zhí)行。使用jion函數(shù),等各線程執(zhí)行完,則輸出AllMax

public class four2 {
 static long AllMax=-1;
 public static void main(String[] args) {
 // TODO Auto-generated method stub
 MyThr t1=new MyThr();
 MyThr t2=new MyThr();
 MyThr t3=new MyThr();
 MyThr t4=new MyThr();
 MyThr t5=new MyThr();
 t1.start();
 t2.start();
 t3.start();
 t4.start();
 t5.start();
 
 try {
  t1.join();
  t2.join();
  t3.join();
  t4.join();
  t5.join();
 } catch (InterruptedException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 }
 System.out.println("10000個數(shù)中的最大值為:"+AllMax);
 }
 
 public static class MyThr extends Thread{
 public void run(){
  long rand;
  for(int i=1;i<=2000;i++){
  rand=(long)(Math.random()*100000)%100000;
  //System.out.println(rand);
  if(rand>AllMax){
   AllMax=rand;
  }
  }
 }
 } 
}

--------------后話------------------

按照平時用的選擇最大隨機數(shù)的方法和多線程方法比較,所用時間還是普通方法快。

以下是測試對比圖:

1.傳統(tǒng)方法:

2.多線程方法所用時間:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 詳解Java的Spring框架中bean的注入集合

    詳解Java的Spring框架中bean的注入集合

    這篇文章主要介紹了詳解Java的Spring框架中bean的注入集合,Spring是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2015-12-12
  • MyBatisPlus自定義SQL的實現(xiàn)

    MyBatisPlus自定義SQL的實現(xiàn)

    MyBatisPlus提供了自定義SQL功能,允許開發(fā)者在Mapper接口中定義方法,并通過XML文件或注解編寫SQL語句,本文詳解了如何在MP中使用自定義SQL,感興趣的可以了解一下
    2024-09-09
  • PowerJob的UserService工作流程源碼解讀

    PowerJob的UserService工作流程源碼解讀

    這篇文章主要介紹了PowerJob的UserService工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • java線程間通信的通俗解釋及代碼示例

    java線程間通信的通俗解釋及代碼示例

    這篇文章主要介紹了java線程間通信的通俗解釋,介紹了線程通信中的幾個相關概念,然后分享了線程通信的實現(xiàn)方式及代碼示例,具有一定參考價值 ,需要的朋友可以了解下。
    2017-11-11
  • IDEA創(chuàng)建方法時如何快速添加注釋

    IDEA創(chuàng)建方法時如何快速添加注釋

    這篇文章主要介紹了IDEA創(chuàng)建方法時如何快速添加注釋問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • SpringBoot基于Redis實現(xiàn)短信登錄的操作

    SpringBoot基于Redis實現(xiàn)短信登錄的操作

    驗證碼登錄是非常常見的一種登錄方式,能夠簡化用戶登錄的過程,本文主要介紹了SpringBoot基于Redis實現(xiàn)短信登錄的操作,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • 為什么Java開發(fā)需要配置環(huán)境變量

    為什么Java開發(fā)需要配置環(huán)境變量

    這篇文章主要介紹了為什么Java開發(fā)需要配置環(huán)境變量,幫助大家更好的理解和學習Java,感興趣的朋友可以了解下
    2020-08-08
  • Java并發(fā) CompletableFuture異步編程的實現(xiàn)

    Java并發(fā) CompletableFuture異步編程的實現(xiàn)

    這篇文章主要介紹了Java并發(fā) CompletableFuture異步編程的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • JDK的具體安裝步驟(帶圖帶解釋巨詳細)

    JDK的具體安裝步驟(帶圖帶解釋巨詳細)

    Java是一種廣泛使用的編程語言,許多應用程序和系統(tǒng)都依賴于它,如果您想進行Java編程或運行Java應用程序,首先需要安裝Java開發(fā)工具包(JDK),這篇文章主要給大家介紹了關于JDK具體安裝步驟的相關資料,文中介紹的方法帶圖帶解釋巨詳細,需要的朋友可以參考下
    2024-05-05
  • SpringBoot與單元測試JUnit的結合操作

    SpringBoot與單元測試JUnit的結合操作

    這篇文章主要介紹了SpringBoot與單元測試JUnit的結合操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10

最新評論