久久久精品一区ed2k-女人被男人叉到高潮的视频-中文字幕乱码一区久久麻豆樱花-俄罗斯熟妇真实视频

Java隨機數(shù)怎么應用

這篇文章主要介紹“Java隨機數(shù)怎么應用”,在日常操作中,相信很多人在Java隨機數(shù)怎么應用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java隨機數(shù)怎么應用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站設計服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)鐘山免費做網(wǎng)站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。

Java隨機數(shù)的測試

通過一個例子說明上面的用法

import java.util.Random;   /**   * Java隨機數(shù)測試   * User: leizhimin   * Date: 2008-11-19 17:52:50   */  public class TestRandomNum {   public static void main(String[] args) {   randomTest();   testNoSeed();   testSeed1();   testSeed2();   }   public static void randomTest() {   System.out.println("--------------test()--------------");   //返回以毫秒為單位的當前時間。   long r1 = System.currentTimeMillis();   //返回帶正號的 double 值,大于或等于 0.0,小于 1.0。   double r2 = Math.random();   //通過Random類來獲取下一個隨機的整數(shù)   int r3 = new Random().nextInt();   System.out.println("r1 = " + r1);   System.out.println("r3 = " + r2);   System.out.println("r2 = " + r3);   }   public static void testNoSeed() {   System.out.println("--------------testNoSeed()--------------");   //創(chuàng)建不帶種子的測試Random對象   Random random = new Random();   for (int i = 0; i < 3; i++) {   System.out.println(random.nextInt());   }   }   public static void testSeed1() {   System.out.println("--------------testSeed1()--------------");   //創(chuàng)建帶種子的測試Random對象   Random random = new Random(555L);   for (int i = 0; i < 3; i++) {   System.out.println(random.nextInt());   }   }   public static void testSeed2() {   System.out.println("--------------testSeed2()--------------");   //創(chuàng)建帶種子的測試Random對象   Random random = new Random();   random.setSeed(555L);   for (int i = 0; i < 3; i++) {   System.out.println(random.nextInt());   }   }   }

運行結果:

--------------test()--------------   r1 = 1227108626582  r3 = 0.5324887850155043  r2 = -368083737  --------------testNoSeed()--------------   809503475  1585541532  -645134204  --------------testSeed1()--------------   -1367481220  292886146  -1462441651  --------------testSeed2()--------------   -1367481220  292886146  -1462441651  Process finished with exit code 0

通過testSeed1()與testSeed2()方法的結果可以看到,兩個打印結果相同,因為他們種子相同,再運行一次,結果還是一樣的,這就是帶種子隨機數(shù)的特性。而不帶種子的,每次運行結果都是隨機的。

Java隨機數(shù)的綜合應用

下面通過最近寫的一個隨機數(shù)工具類來展示用法:

import java.util.Random;   /**   * 隨機數(shù)、隨即字符串工具   * User: leizhimin   * Date: 2008-11-19 9:43:09   */  public class RandomUtils {   public static final String allChar =            "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";   public static final String letterChar =         "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";   public static final String numberChar = "0123456789";   /**   * 返回一個定長的隨機字符串(只包含大小寫字母、數(shù)字)   *   * @param length 隨機字符串長度   * @return 隨機字符串   */  public static String generateString(int length) {   StringBuffer sb = new StringBuffer();   Random random = new Random();   for (int i = 0; i < length; i++) {   sb.append(allChar.charAt(random.nextInt(allChar.length())));   }   return sb.toString();   }   /**   * 返回一個定長的隨機純字母字符串(只包含大小寫字母)   *   * @param length 隨機字符串長度   * @return 隨機字符串   */  public static String generateMixString(int length) {   StringBuffer sb = new StringBuffer();   Random random = new Random();   for (int i = 0; i < length; i++) {   sb.append(allChar.charAt(random.nextInt(letterChar.length())));   }   return sb.toString();   }   /**   * 返回一個定長的隨機純大寫字母字符串(只包含大小寫字母)   *   * @param length 隨機字符串長度   * @return 隨機字符串   */  public static String generateLowerString(int length) {   return generateMixString(length).toLowerCase();   }   /**   * 返回一個定長的隨機純小寫字母字符串(只包含大小寫字母)   *   * @param length 隨機字符串長度   * @return 隨機字符串   */  public static String generateUpperString(int length) {   return generateMixString(length).toUpperCase();   }   /**   * 生成一個定長的純0字符串   *   * @param length 字符串長度   * @return 純0字符串   */  public static String generateZeroString(int length) {   StringBuffer sb = new StringBuffer();   for (int i = 0; i < length; i++) {   sb.append('0');   }   return sb.toString();   }   /**   * 根據(jù)數(shù)字生成一個定長的字符串,長度不夠前面補0   *   * @param num 數(shù)字   * @param fixdlenth 字符串長度   * @return 定長的字符串   */  public static String toFixdLengthString(long num, int fixdlenth) {   StringBuffer sb = new StringBuffer();   String strNum = String.valueOf(num);   if (fixdlenth - strNum.length() >= 0) {   sb.append(generateZeroString(fixdlenth - strNum.length()));   } else {   throw new RuntimeException("將數(shù)字" + num + "轉化為長度為" + fixdlenth + "的字符串發(fā)生異    常!");   }   sb.append(strNum);   return sb.toString();   }   /**   * 根據(jù)數(shù)字生成一個定長的字符串,長度不夠前面補0   *   * @param num 數(shù)字   * @param fixdlenth 字符串長度   * @return 定長的字符串   */  public static String toFixdLengthString(int num, int fixdlenth) {   StringBuffer sb = new StringBuffer();   String strNum = String.valueOf(num);   if (fixdlenth - strNum.length() >= 0) {   sb.append(generateZeroString(fixdlenth - strNum.length()));   } else {   throw new RuntimeException("將數(shù)字" + num + "轉化為長度為" + fixdlenth + "的字符串發(fā)生異    常!");   }   sb.append(strNum);   return sb.toString();   }   public static void main(String[] args) {   System.out.println(generateString(15));   System.out.println(generateMixString(15));   System.out.println(generateLowerString(15));   System.out.println(generateUpperString(15));   System.out.println(generateZeroString(15));   System.out.println(toFixdLengthString(123, 15));   System.out.println(toFixdLengthString(123L, 15));   }   }

運行結果:

vWMBPiNbzfGCpHG   23hyraHdJkKPwMv   tigowetbwkm1nde   BPZ1KNEJPHB115N   000000000000000  000000000000123  000000000000123  Process finished with exit code 0

到此,關于“Java隨機數(shù)怎么應用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

網(wǎng)站標題:Java隨機數(shù)怎么應用
網(wǎng)頁鏈接:http://sd-ha.com/article0/iedhoo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google、網(wǎng)站收錄、建站公司云服務器、標簽優(yōu)化、品牌網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名