特殊(字母+数字)随机数
随机数很简单,字母加数字也很简单,但是特殊的字母+数字就是个别字母和数字不需要,害怕混淆。比如Z和2
最终效果是:两个数字加四个字母 做法是: 先随机两个数字,再随机四个字母,两者拼接成一个字符串。最后把该字符串打乱重新随机组合该字符串
用前端js写的:
random: function (num) {
      var size1= '356789';
      var size2 = 'ABCDEFGHJKMNPQRSTUVWXY';
      var size3=['1','2','3','4','5','6'];
      var result='';
      var res=[];
      var lenReg=[];
      for(var i=0;i<2;i++){
        result += size1.split('')[parseInt(Math.random()*6)];
      }
      for(var j=0;j<4;j++){
        result += size2.split('')[parseInt(Math.random()*22)];
      }
      for(var k=0;k<num;k++){
        var len=size3.length-1;
        var index =parseInt(Math.random()*len);
        lenReg[k]= size3[index];
        size3.splice(index,1)
        res[lenReg[k]-1]=result.split('')[k]
      }
      res=res.join('');
      return res;
    }
用后端Java写的
public static String getRandomCode() {
    String number = "356789";
    String letter = "ABCDEFGHJKMNPQRSTUVWXY";
    Random rand = new Random();
    StringBuffer flag = new StringBuffer();
    for (int i = 0; i < 2; i++) {
      flag.append(number.charAt(rand.nextInt(6)) + "");
    }
    for (int j = 0; j < 4; j++) {
      flag.append(letter.charAt(rand.nextInt(22)) + "");
    }
    char[] chars = flag.toString().toCharArray();
    List<Character> list = new ArrayList<>();
    for (int k = 0; k < chars.length; k++) {
      list.add(chars[k]);
    }
    Collections.shuffle(list);
    return StringUtils.join(list, "");
  }
 
                    
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号