`
phoenixocean
  • 浏览: 8161 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

随机生成字符串

    博客分类:
  • java
 
阅读更多

项目用到一个随机生成字符串,在网上找到一些例子,在此记录一下

 

 

import java.util.Random;
 
public static String getRandomString(int length) {
    StringBuffer buffer = new StringBuffer("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");
    StringBuffer sb = new StringBuffer();
    Random r = new Random();
    int range = buffer.length();
    for (int i = 0; i < length; i ++) {
        sb.append(buffer.charAt(r.nextInt(range)));
    }
    return sb.toString();
}
 

 

 

 import java.util.Random;
   public class RandomUtils { 
   public static final String allChar = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   public static final String letterChar = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   public static final String numberChar = "0123456789";
   /** 
   * 返回一个定长的随机字符串(只包含大小写字母、数字) 
   * 
   * @param length 随机字符串长度 
   * @return 随机字符串 
   */ 
   public static String generateString(int length) { 
   StringBuffer sb = new StringBuffer(); 
   Random random = new Random(); 
   for (int i = 0; i < length; i++) {
     sb.append(allChar.charAt(random.nextInt(allChar.length()))); 
   } 
   return sb.toString(); 
   } 

   /** 
   * 返回一个定长的随机纯字母字符串(只包含大小写字母) 
   * 
   * @param length 随机字符串长度 
   * @return 随机字符串 
   */ 
   public static String generateMixString(int length) { 
   StringBuffer sb = new StringBuffer(); 
   Random random = new Random(); 
   for (int i = 0; i < length; i++) {
   sb.append(allChar.charAt(random.nextInt(letterChar.length()))); 
   } 
   return sb.toString(); 
   } 

   /** 
   * 返回一个定长的随机纯大写字母字符串(只包含大小写字母) 
   * 
   * @param length 随机字符串长度 
   * @return 随机字符串 
   */ 
   public static String generateLowerString(int length) { 
   return generateMixString(length).toLowerCase(); 
   } 

   /** 
   * 返回一个定长的随机纯小写字母字符串(只包含大小写字母) 
   * 
   * @param length 随机字符串长度 
   * @return 随机字符串 
   */ 
   public static String generateUpperString(int length) { 
   return generateMixString(length).toUpperCase(); 
   } 

   /** 
   * 生成一个定长的纯0字符串 
   * 
   * @param length 字符串长度 
   * @return 纯0字符串 
   */ 
   public static String generateZeroString(int length) { 
   StringBuffer sb = new StringBuffer(); 
   for (int i = 0; i < length; i++) {
   sb.append('0'); 
   } 
   return sb.toString(); 
   } 

   /** 
   * 根据数字生成一个定长的字符串,长度不够前面补0 
   * 
   * @param num 数字 
   * @param fixdlenth 字符串长度 
   * @return 定长的字符串 
   */ 
   public static String toFixdLengthString(long num, int fixdlenth) { 
   StringBuffer sb = new StringBuffer(); 
   String strNum = String.valueOf(num); 
   if (fixdlenth - strNum.length() >= 0) {
   sb.append(generateZeroString(fixdlenth - strNum.length())); 
   } else { 
     throw new RuntimeException( "将数字" + num + "转化为长度为" + fixdlenth + "的字符串发生异常!");
   } 
   sb.append(strNum); 
   return sb.toString(); 
   } 

   /** 
   * 根据数字生成一个定长的字符串,长度不够前面补0 
   * 
   * @param num 数字 
   * @param fixdlenth 字符串长度 
   * @return 定长的字符串 
   */ 
   public static String toFixdLengthString(int num, int fixdlenth) { 
   StringBuffer sb = new StringBuffer(); 
   String strNum = String.valueOf(num); 
   if (fixdlenth - strNum.length() >= 0) {
   sb.append(generateZeroString(fixdlenth - strNum.length())); 
   } else { 
   throw new RuntimeException( "将数字" + num + "转化为长度为" + fixdlenth + "的字符串发生异常!");
   } 
   sb.append(strNum); 
   return sb.toString(); 
   } 

   public static void main(String[] args) { 
   System.out.println(generateString(15)); 
   System.out.println(generateMixString(15)); 
   System.out.println(generateLowerString(15)); 
   System.out.println(generateUpperString(15)); 
   System.out.println(generateZeroString(15)); 
   System.out.println(toFixdLengthString(123, 15)); 
   System.out.println(toFixdLengthString(123L, 15)); 
   } 
   } 

 

 

   运行结果: 

   vWMBPiNbzfGCpHG 

   23hyraHdJkKPwMv 

   tigowetbwkm1nde 

   BPZ1KNEJPHB115N 

   000000000000000 

   000000000000123 

   000000000000123 

   Process finished with exit code 0 

分享到:
评论

相关推荐

    java随机生成字符串(字符随机生成类 生成随机字符组合).docx

    ### Java随机生成字符串知识点解析 #### 一、概述 在软件开发过程中,有时我们需要生成随机字符串来满足不同的需求,比如生成验证码、密码等。本文档介绍了一种利用Java实现随机字符串生成的方法。此方法提供了...

    正则表达式随机生成字符串工具

    而“正则表达式随机生成字符串工具”则是一个能够根据预设的正则规则,自动生成符合该规则的随机字符串的实用程序。 这个工具的核心功能在于其灵活性和多样性。通过定义不同的正则表达式,用户可以生成各种类型的...

    泰迪杯挑战数据_随机生成字符串_泰迪杯_

    在IT行业中,随机生成字符串是一项基础且重要的任务,它广泛应用于测试、密码生成、加密算法、数据填充等场景。"泰迪杯挑战数据_随机生成字符串_泰迪杯_"这个标题可能指的是一个编程竞赛或者练习项目,其中包含了对...

    excel 生成随机字符串

    excel生成20位随机字符串,按F9更新,可以做为随机密码使用。

    Java根据正则表达式生成字符串—Xeger,automaton

    下面是一个基于RE2J和有限自动机生成字符串的例子: ```java import com.google.re2j.Pattern; import com.google.re2j.RE2; public class Main { public static void main(String[] args) { String regex = "^...

    字符串随机生成小软件

    随机生成字符串的方法多种多样,通常会涉及到随机数生成器。随机数生成器是编程中的一个重要组件,用于产生无法预测的数值。在生成字符串时,可以设置随机种子,确保每次运行生成的字符串不一致,增加数据的随机性和...

    随机生成32位字符串

    在这个场景中,"随机生成32位字符串"是一个常见的需求,例如在创建唯一标识符、生成安全密码或进行加密算法时。下面将详细介绍如何在VB中实现这一功能。 首先,我们要了解VB中的字符串是由一系列字符组成的,每个...

    易语言快速取随机字符

    例如,如果要生成包含英文大写字母、小写字母和数字的随机字符,我们可以定义三个字符串变量,分别存储这些字符集,然后通过循环和随机数选择字符。 以下是一个基本的实现思路: 1. 定义三个字符串,分别存储英文...

    随机字符串生成器.exe

    本工具用于生成随机字符串,可以自定义字符池及字符串长度。欢迎下载使用! 本工具用于生成随机字符串,可以自定义字符池及字符串长度。欢迎下载使用!

    随机生成字符串工具类

    规定随机字符串 定长的字符串 10位随机数和6位毫秒时间等

    易语言快速取随机字符源码

    局部变量 length, 整数型, 默认值 = 8 ' 定义生成字符串的长度 .重复 length .局部变量 randomIndex, 整数型 .设为 随机整数(0, 25) + 97 ' 生成小写字母的随机索引(97-122对应小写字母a-z) .设为 randomStr,...

    C# 生成随机字母字符串

    例如,可以创建两个字符串,分别包含大写字母和小写字母,然后根据需求随机选择其中的一个字符串来生成字符。或者,可以通过位操作来决定每个字符是否应为大写。例如: ```csharp public static string ...

    java随机生成字符串(字符随机生成类 生成随机字符组合)

    下面将详细解释这个类的各个部分以及如何使用它来生成随机字符串。 首先,`PassWord`类定义了四个字符串数组,分别存储了小写字母、大写字母、数字和特殊符号。这些数组用于生成不同类型的随机字符。例如,`...

    aotu.js 字符串指定字符 随机生成出汉字

    总之,`aotu.js`的字符串指定字符随机生成汉字的功能,结合JavaScript的字符串和数学操作,为前端开发者提供了一种强大的工具,用于创建动态和多样化的汉字内容。在实际应用中,它可以帮助提高引流脚本的效果,增加...

    js随机生成32位字符串

    js随机生成32位字符串 包含大小写

    根据正则表达式生成随机字符串

    根据java正则表达式生成一个随机的字符串,具体可以去一下网站看:https://code.google.com/p/xeger/

    生成随机字符串(字符串,数字)

    例如,如果需要生成的随机字符串在特定范围内不能重复,可以使用集合(如HashSet)来检查新生成的字符串是否已存在。若要保证字符分布更均匀,可以使用更复杂的随机数生成算法,或者对生成的字符串进行一定的调整。 ...

    Java随机字符串生成器,可用于生成随机密码,密约等场景,支持字符范围配置(如只允许数字,只允许字母,只允许数字字母,特殊字符等混合配置)

    Java随机字符串生成器,可用于生成随机密码,加密算法密约(AES,RSA等)等场景,支持可选字符范围配置(如只允许数字,只允许字母,只允许数字字母,特殊字符等混合配置),即在选择的字符范围内去实现随机字符串...

    Java 生成随机字符串数组的实例详解

    Java 生成随机字符串数组的实例详解 Java 生成随机字符串数组的实例详解是一种常见的编程任务,主要是利用Collections.sort()方法对泛型为String的List进行排序。下面是一个详细的实例详解,介绍了生成随机字符串...

Global site tag (gtag.js) - Google Analytics