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

java隨機生成字符串(字符隨機生成類 生成隨機字符組合)

 更新時間:2013年12月30日 10:22:40   作者:  
java隨機生成字符串,字符組合多樣,可以大小字組合、大+小字符+數(shù)字等方式,大家參考使用吧

復制代碼 代碼如下:

package com.phyl.password;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Random;
/**
 * 字符隨機生成類
 * @author ASUS
 *
 */
public class PassWord {

 /**
  * 密碼類型枚舉
  * @author ASUS
  */
 public static enum TYPE {
  /**
   * 字符型
   */
  LETTER,
  /**
   * 大寫字符型
   */
  CAPITAL,
  /**
   * 數(shù)字型
   */
  NUMBER,
  /**
   * 符號型
   */
  SIGN,
  /**
   * 大+小字符 型
   */
  LETTER_CAPITAL,
  /**
   * 小字符+數(shù)字 型
   */
  LETTER_NUMBER,
  /**
   * 大+小字符+數(shù)字 型
   */
  LETTER_CAPITAL_NUMBER,
  /**
   * 大+小字符+數(shù)字+符號 型
   */
  LETTER_CAPITAL_NUMBER_SIGN
 }

 private static String[] lowercase = {
   "a","b","c","d","e","f","g","h","i","j","k",
   "l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};

 private static String[] capital = {
   "A","B","C","D","E","F","G","H","I","J","K",
   "L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"}; 

 private static String[] number = {
   "1","2","3","4","5","6","7","8","9","0"};

 private static String[] sign = {
   "~","!","@","#","$","%","^","&","*","(",")","_","+","`","-","=",
   "{","}","|",":","\"","<",">","?",
   "[","]","\\",";","'",",",".","/"};

 /**
  * 靜態(tài)隨機數(shù)
  */
 private static Random random = new Random();

 public static void main(String[] args) {
  System.out.println(PassWord.getRandom(24, PassWord.TYPE.CAPITAL));
 }

 /**
  * 獲取隨機組合碼
  * @param num 位數(shù)
  * @param type 類型
  * @type
  * <br>字符型 LETTER,
  * <br>大寫字符型 CAPITAL,
  * <br>數(shù)字型 NUMBER,
  * <br>符號型 SIGN,
  * <br>大+小字符型 LETTER_CAPITAL,
  * <br>小字符+數(shù)字 型 LETTER_NUMBER,
  * <br>大+小字符+數(shù)字 型 LETTER_CAPITAL_NUMBER,
  * <br>大+小字符+數(shù)字+符號 型 LETTER_CAPITAL_NUMBER_SIGN
  */
 public static String getRandom(int num,TYPE type){
  ArrayList<String> temp = new ArrayList<String>();
  StringBuffer code = new StringBuffer();
  if(type == TYPE.LETTER){
   temp.addAll(Arrays.asList(lowercase));
  }else if(type == TYPE.CAPITAL){
   temp.addAll(Arrays.asList(capital));
  }else if(type == TYPE.NUMBER){
   temp.addAll(Arrays.asList(number));
  }else if(type == TYPE.SIGN){
   temp.addAll(Arrays.asList(sign));
  }else if(type == TYPE.LETTER_CAPITAL){
   temp.addAll(Arrays.asList(lowercase));
   temp.addAll(Arrays.asList(capital));
  }else if(type == TYPE.LETTER_NUMBER){
   temp.addAll(Arrays.asList(lowercase));
   temp.addAll(Arrays.asList(number));
  }else if(type == TYPE.LETTER_CAPITAL_NUMBER){
   temp.addAll(Arrays.asList(lowercase));
   temp.addAll(Arrays.asList(capital));
   temp.addAll(Arrays.asList(number));
  }else if(type == TYPE.LETTER_CAPITAL_NUMBER_SIGN){
   temp.addAll(Arrays.asList(lowercase));
   temp.addAll(Arrays.asList(capital));
   temp.addAll(Arrays.asList(number));
   temp.addAll(Arrays.asList(sign));
  }
  for (int i = 0; i < num; i++) {
   code.append(temp.get(random.nextInt(temp.size())));
  }
  return code.toString();
 }

}

相關(guān)文章

  • SpringCloud OpenFeign與Ribbon客戶端配置詳解

    SpringCloud OpenFeign與Ribbon客戶端配置詳解

    在springcloud中,openfeign是取代了feign作為負載均衡組件的,feign最早是netflix提供的,他是一個輕量級的支持RESTful的http服務調(diào)用框架,內(nèi)置了ribbon,而ribbon可以提供負載均衡機制,因此feign可以作為一個負載均衡的遠程服務調(diào)用框架使用
    2022-11-11
  • IntelliJ?IDEA如何集成maven

    IntelliJ?IDEA如何集成maven

    這篇文章主要介紹了IntelliJ?IDEA如何集成maven問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • java中子類繼承父類,程序運行順序的深入分析

    java中子類繼承父類,程序運行順序的深入分析

    本篇文章是對java中子類繼承父類,程序運行順序進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • Java遺傳算法之沖出迷宮

    Java遺傳算法之沖出迷宮

    這篇文章首先詳細介紹了什么是遺傳算法,然后通過遺傳算法的思想用實例解析使用遺傳算法解決迷宮問題,需要的朋友可以參考下
    2017-09-09
  • Java中的跨域和@CrossOrigin注解的作用詳解

    Java中的跨域和@CrossOrigin注解的作用詳解

    這篇文章主要介紹了Java中的跨域和@CrossOrigin注解的作用詳解,跨域,指的是瀏覽器不能執(zhí)行其他網(wǎng)站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器對JavaScript施加的安全限制,需要的朋友可以參考下
    2023-12-12
  • Java中List的使用方法簡單介紹

    Java中List的使用方法簡單介紹

    這篇文章主要針對Java中List的使用方法為大家介紹了進行簡單介紹,List是個集合接口,只要是集合類接口都會有個“迭代子”( Iterator ),利用這個迭代子,就可以對list內(nèi)存的一組對象進行操作,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 淺談一下Java中枚舉的用法

    淺談一下Java中枚舉的用法

    這篇文章主要介紹了淺談一下Java中枚舉的用法,枚舉是一個被命名的整型常數(shù)的集合,用于聲明一組帶標識符的常數(shù),當一個變量有幾種固定可能的取值時,就可以將它定義為枚舉類型,需要的朋友可以參考下
    2023-04-04
  • Quartz實現(xiàn)JAVA定時任務的動態(tài)配置的方法

    Quartz實現(xiàn)JAVA定時任務的動態(tài)配置的方法

    這篇文章主要介紹了Quartz實現(xiàn)JAVA定時任務的動態(tài)配置的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • java 如何把byte轉(zhuǎn)化為KB、MB、GB的方法

    java 如何把byte轉(zhuǎn)化為KB、MB、GB的方法

    這篇文章主要介紹了java 如何把byte轉(zhuǎn)化為KB、MB、GB的方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • elasticsearch節(jié)點間通信的基礎(chǔ)transport啟動過程

    elasticsearch節(jié)點間通信的基礎(chǔ)transport啟動過程

    這篇文章主要為大家介紹了elasticsearch節(jié)點間通信的基礎(chǔ)transport啟動過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04

最新評論