<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    一切bug都不是你的錯,只因為你對它的無視而表示的不滿

    追求java的極限,語言,工具,框架,系統。

     

    JAVA產生隨機數總結

    最近用到隨機數,但是一直都沒搞多清楚。剛好用到就總結一下。(主要是來源API以及網上)
    主要關注兩方面:
            如何產生一個隨機數;
            如何控制產生的隨機數范圍,還包括正負,類型;

    JAVA能實現隨機數的方法主要有:
    第一種:使用java.lang.math類中的Math.random()方法;
               API說明是:返回帶正號的 double 值,該值大于等于 0.0 且小于 1.0
                               返回值是一個偽隨機選擇的數,在該范圍內(近似)均勻分布。
    使用:這個方法主要用來返回一個正整數,例:int a = (int) (Math.random() * 1000) ;
            即可返回一個0~1000內的所有正整數,不過不知道包不包括0和1000,想也應該是包括地!當然你可以換成100。
    很多時候我們用到隨機數主要是出于某個對象或其他事件有多種可能的狀態。通過產生隨機數,
    隨機地實現某一狀態,改變顯示結果或是使程序進入某一分支中。
    例如俄羅斯方塊中,方塊有七種類型,同時每一個方塊又有四種狀態。可以用這樣的方式 來隨機產生下落的
    方塊:
           int  blockType = (int) (Math.random() * 1000) % 7;
           int  turnState = (int) (Math.random() * 1000) % 4;

    第二種:使用java.util.Random類的Random對象。當然他的功能就強大多了,不僅僅可以產生隨機整數,浮點數,長整型,布爾數都可以。
               只要調用相應的方法即可。
    使用:java.util.Random r = new  java.util.Random();
             Tpye x = r.nextTpye();//這里用了描述語言,具體用那個自己選;
    產生的隨機數真不知道是那個。可以肯定上面代碼如果是整型,那一般是很大的數,同時有正有負。
    如何生成某個范圍的隨機數?比如像上面,0~1000之間的隨機數?
    一般的方法是:取正取模
            Random r = new Random(); 
            int a = (r.nextInt()>>>1)%100;
    但會出現值偏小的情況。
    所以,JDK升級的版本的用法就為nextInt(100)產生0-100之間的隨機數,更方便。
    API:public int nextInt(int n)
           返回一個偽隨機數,它是取自此隨機數生成器序列的、在 0(包括)和指定值(不包括)之間均勻分布的 int 值。
    其他類型的也一樣。
    還可以簡單地用如:
    Random r = new Random(); 

    int i = r.randomInt(10);//輸入一個0到9 的隨機數;
    就先寫到這里,有機會再加吧!




    posted on 2012-03-04 18:10 gaochang 閱讀(1735) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    統計

    常用鏈接

    留言簿

    隨筆檔案

    文章檔案

    相冊

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久精品国产精品亚洲蜜月 | 影音先锋在线免费观看| 无码国模国产在线观看免费| 久久精品国产亚洲网站| 亚洲AV日韩AV无码污污网站| 亚洲欧洲免费视频| 亚洲国产精品尤物YW在线观看 | 中文字幕亚洲码在线| 国产免费AV片在线观看| 免费a级毛片视频| 亚洲AV无码一区二区三区人| 国产婷婷成人久久Av免费高清 | 夜色阁亚洲一区二区三区| 亚洲专区中文字幕| 四虎影视www四虎免费| 亚洲欧美熟妇综合久久久久| 91九色视频无限观看免费| 久久久青草青青亚洲国产免观| 91在线视频免费观看| 亚洲欧洲精品成人久久曰影片| 中文字幕无码精品亚洲资源网久久| 日本精品人妻无码免费大全| 久久亚洲美女精品国产精品| 久久国产精品免费一区二区三区 | 中文字幕在线免费看线人| 亚洲一区二区成人| 成年女人午夜毛片免费看| 亚洲人成片在线观看| 99久久久国产精品免费牛牛| 国产亚洲成AV人片在线观黄桃| 日韩少妇内射免费播放| 免费在线观看黄网站| 成人久久免费网站| 久久亚洲精品成人| 国产成人一区二区三区视频免费| 久久亚洲国产成人影院网站 | 国产青草亚洲香蕉精品久久| 全免费一级午夜毛片| 欧美色欧美亚洲另类二区| 亚洲精品高清国产一线久久| 毛片免费观看网站|