首页 > 解决方案 > 我们可以根据正则表达式生成多个随机字符串 /^[0-9A-F]$/

问题描述

我们可以根据正则表达式生成多个随机字符串 /^[0-9A-F]$/

我已经写了下面的代码,有没有更好的方法来生成它,请不要使用任何lib,只使用java API

public static void printRandomStrings(int numOfStrings){
  
    Random random = new Random();
    char[] chars = {'A','B','C','D','E','F'}; // 6 characters
    
    for(int i=0;i<numOfStrings;i++){
      
      String randomString = "";
      
        for(int j=0;j<4;j++){
        
          int choice = random.nextInt(2); // 0 -1
          
          if(choice == 1){
            randomString= randomString+generateRandomInt(random);
          }else{
            randomString= randomString+generateRandomChar(random,chars);
          }            
        }
      
        System.out.println(randomString);
    }        
  }      
  
  public static int generateRandomInt(Random random){
    return random.nextInt(10);
  }
  
  public static char generateRandomChar(Random random,char[] chars){
    int charIdx = random.nextInt(6);
    return chars[charIdx];
  }

标签: java

解决方案


推荐阅读