中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      最全的java隨機數生成算法

      時間:2024-10-07 16:55:31 JAVA認證 我要投稿
      • 相關推薦

      最全的java隨機數生成算法

        java隨機數生成算法是怎么樣的?下面yjbys小編為大家分享最新最全的java隨機數生成算法,希望對大家學習有所幫助!

        一個最全的隨機數的生成算法,最代碼的找回密碼的隨機數就是用的這個方法:

        1 String password = RandomUtil.generateString(10);

        源碼如下:

        001 package com.javaniu.core.util;

        002

        003 import java.util.Random;

        004

        005 public class RandomUtil {

        006 public static finalString ALLCHAR = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

        007 public static finalString LETTERCHAR = "abcdefghijkllmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

        008 public static final String NUMBERCHAR = "0123456789";

        009

        010 /**

        011 * 返回一個定長的隨機字符串(只包含大小寫字母、數字)

        012 *

        013 * @param length

        014 * 隨機字符串長度

        015 * @return 隨機字符串

        016 */

        017 public static String generateString(int length) {

        018 StringBuffer sb = new StringBuffer();

        019 Random random = new Random();

        020 for (int i = 0; i < length; i++) {

        021 sb.append(ALLCHAR.charAt(random.nextInt(ALLCHAR.length())));

        022 }

        023 return sb.toString();

        024 }

        025

        026 /**

        027 * 返回一個定長的隨機純字母字符串(只包含大小寫字母)

        028 *

        029 * @param length

        030 * 隨機字符串長度

        031 * @return 隨機字符串

        032 */

        033 public static String generateMixString(int length) {

        034 StringBuffer sb = new StringBuffer();

        035 Random random = new Random();

        036 for (int i = 0; i < length; i++) {

        037 sb.append(ALLCHAR.charAt(random.nextInt(LETTERCHAR.length())));

        038 }

        039 return sb.toString();

        040 }

        041

        042 /**

        043 * 返回一個定長的隨機純大寫字母字符串(只包含大小寫字母)

        044 *

        045 * @param length

        046 * 隨機字符串長度

        047 * @return 隨機字符串

        048 */

        049 public static String generateLowerString(int length) {

        050 return generateMixString(length)。toLowerCase();

        051 }

        052

        053 /**

        054 * 返回一個定長的隨機純小寫字母字符串(只包含大小寫字母)

        055 *

        056 * @param length

        057 * 隨機字符串長度

        058 * @return 隨機字符串

        059 */

        060 public static String generateUpperString(int length) {

        061 return generateMixString(length)。toUpperCase();

        062 }

        063

        064 /**

        065 * 生成一個定長的純0字符串

        066 *

        067 * @param length

        068 * 字符串長度

        069 * @return 純0字符串

        070 */

        071 public static String generateZeroString(int length) {

        072 StringBuffer sb = new StringBuffer();

        073 for (int i = 0; i < length; i++) {

        074 sb.append('0');

        075 }

        076 return sb.toString();

        077 }

        078

        079 /**

        080 * 根據數字生成一個定長的字符串,長度不夠前面補0

        081 *

        082 * @param num

        083 * 數字

        084 * @param fixdlenth

        085 * 字符串長度

        086 * @return 定長的字符串

        087 */

        088 public static String toFixdLengthString(long num, int fixdlenth) {

        089 StringBuffer sb = new StringBuffer();

        090 String strNum = String.valueOf(num);

        091 if (fixdlenth - strNum.length() >= 0) {

        092 sb.append(generateZeroString(fixdlenth - strNum.length()));

        093 } else {

        094 throw new RuntimeException("將數字" + num + "轉化為長度為" + fixdlenth

        095 + "的字符串發生異常!");

        096 }

        097 sb.append(strNum);

        098 return sb.toString();

        099 }

        100

        101 /**

        102 * 每次生成的len位數都不相同

        103 *

        104 * @param param

        105 * @return 定長的數字

        106 */

        107 public static int getNotSimple(int[] param, int len) {

        108 Random rand = new Random();

        109 for (int i = param.length; i > 1; i--) {

        110 int index = rand.nextInt(i);

        111 int tmp = param[index];

        112 param[index] = param[i - 1];

        113 param[i - 1] = tmp;

        114 }

        115 int result = 0;

        116 for (int i = 0; i < len; i++) {

        117 result = result * 10 + param[i];

        118 }

        119 return result;

        120 }

        121

        122 public static void main(String[] args) {

        123 System.out.println("返回一個定長的隨機字符串(只包含大小寫字母、數字):"+ generateString(10));

        124 System.out

        125 .println("返回一個定長的隨機純字母字符串(只包含大小寫字母):"+ generateMixString(10));

        126 System.out.println("返回一個定長的隨機純大寫字母字符串(只包含大小寫字母):"

        127 + generateLowerString(10));

        128 System.out.println("返回一個定長的隨機純小寫字母字符串(只包含大小寫字母):"

        129 + generateUpperString(10));

        130 System.out.println("生成一個定長的純0字符串:" + generateZeroString(10));

        131 System.out.println("根據數字生成一個定長的字符串,長度不夠前面補0:"

        132 + toFixdLengthString(123, 10));

        133 int[] in = { 1, 2, 3, 4, 5, 6, 7 };

        134 System.out.println("每次生成的len位數都不相同:" + getNotSimple(in, 3));

        135 }

        136 }

      【最全的java隨機數生成算法】相關文章:

      關于Java通用權限控制的算法06-07

      java五種排序算法匯總07-18

      Java中如何構造、生成XML簡明07-17

      Java認證輔導:Java實現二叉樹遍歷算法10-21

      JAVA認證基礎知識:近似算法(格雷厄姆算法)簡介10-29

      JAVA垃圾收集算法與內存泄露的解決方法10-16

      Java與Java web的區別08-10

      最全企業做賬依據09-17

      最全的嬰兒理發技巧08-29

      最全的國際學校盤點07-09

      主站蜘蛛池模板: 中文字幕精品一区二区日本| 白白视频在线免费观看| 熟妇人妻不卡中文字幕| 高清专区一区二区中文字幕| 亚洲综合1区2区3区| 午夜福利视频男同女同| 国产免费一区二区视频| 日韩精品一区二区三区费暖暖| 富宁县| 国产精品呻吟一区二区三区| 亚洲av激情久久精品人| 无码a级毛片免费视频内谢| 抚松县| 宜州市| 日韩在线视频不卡一区二区三区| 天堂视频一区二区免费在线观看| 亚洲无人区码一码二码三码区别| 怀远县| 云梦县| 永寿县| 91精品欧美综合在线观看| 亚洲高清一区二区三区不卡| 久久久亚洲欧洲日产国码是AV| 欧美日韩中文字幕日韩欧美| 中文字幕有码在线视频| 男人天堂AV在线麻豆| 国产成人自拍视频在线免费| 吉水县| 宝清县| 一本久久精品久久综合桃色| 彰武县| 一区二区三区婷婷在线| 亚洲AⅤ樱花无码| 国产高潮自拍视频在线观看| 日本亚洲成人中文字幕| 宣化县| 日本一区二区三区中文字幕最新| 精精国产xxx在线视频app| 91精品国产91久久久无码色戒| 阿鲁科尔沁旗| 中国少妇久久一区二区|