Java随机生成字符串的方法(三种)


1、生成的字符串每个位置都有可能是str中的一个字母或数字,需要导入的包是import java.util.Random;

//length用户要求产生字符串的长度
public static String getRandomString1(int length){
  String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
  Random random = new Random();
  StringBuffer sb
=new StringBuffer();

  for(int i=0;i<length;i++){     int number=random.nextInt(62);     sb.append(str.charAt(number));   }   return sb.toString(); }

2、可以指定某个位置是a-z、A-Z或是0-9,需要导入的包是import java.util.Random;

  //可以指定字符串的某个位置是什么范围的值
  public static String getRandomString2(int length){
    Random random = new Random();
    StringBuffer sb = new StringBuffer();

    for(int i = 0; i < length; i++){
      int number = random.nextInt(3);
      long result = 0;

    switch(number){
      case 0:
        result = Math.round( Math.random() * 25 + 65 );
        sb.append( String.valueOf( ( char ) result ) );
      break;
      case 1:
        result = Math.round( Math.random() * 25 + 97);
        sb.append( String.valueOf( ( char ) result ) );
      break;
      case 2:
        sb.append( String.valueOf( new Random().nextInt(10)));
      break;
    }
  }
  return sb.toString();
}

3、org.apache.commons.lang 包下有一个RandomStringUtils类,其中有一个 randomAlphanumeric(int length) 函数,可以随机生成一个长度为length的字符串。

//randomAlphanumeric(需要的字符串长度)
String filename = RandomStringUtils.randomAlphanumeric(10);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM