该随笔为开发笔记


今天在公司接手了一个项目,在看该项目老代码时,发现上一位大佬写的随机取一串字符串还不错,在此做一次开发笔记

在他的基础上我做了点改动,但是原理一样

  /**
* 随机取一段字符串方法1
* 可规定自己想从哪些字符中取
* @author zk
*@date: 2019年8月2日 下午5:00:04
* @param str 字符串来源 如:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
* @param length 取的长度
* @return
*/
public static String getstring1(String str, int length) {
Random random=new Random();
StringBuffer sb=new StringBuffer();
for(int i=0;i<length;i++){
int number=random.nextInt(str.length());//取一个0-str.length的数
sb.append(str.charAt(number));//返回指定索引处的字符
}
return sb.toString();
}

查阅了资料

再补充两种方式:

 /**
* 随机取一段字符串方法2
* 这个是用的ASCII的原理
* @author zk
*@date: 2019年8月2日 下午5:07:31
* @param length 所需长度
* @return
*/
public static String getstring2(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);//取一个随机的ASCII码,大写字母
sb.append(String.valueOf((char)result));//转字符存起来
break;
case 1:
result=Math.round(Math.random()*25+97);//取一个随机的ASCII码,小写字母
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方法随机生成一定长度的字符串
* @author zk
*@date: 2019年8月2日 下午5:11:48
* @param length 所需长度
* @return
*/
public static String getstring3(int length) {
String filename=RandomStringUtils.randomAlphanumeric(length);
return filename;
}

以上就为本次的开发笔记

随机生成一串字符串(java)的更多相关文章

  1. Golang 和 Python 随机生成N位字符串

    Golang: func RandomString(n int) string { var letters = []byte("ABCDEFGHIGKLMNOPQRSTUVWXYZabcde ...

  2. PHP 小方法之 随机生成几位字符串

    if(! function_exists ('get_rand_string') ) { function get_rand_string($len=6,$format='ALL') { switch ...

  3. Js随机生成指定长度字符串

    function a(a) { var d, e, b = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789&q ...

  4. php 随机生成

    php随机生成6位字符串: $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';        $max = ...

  5. RandomStringUtils工具类(java随机生成字符串)

    使用RandomStringUtils可以选择生成随机字符串,可以是全字母,全数字,自定义生成字符等等... 其最基础的方法: 参数解读: count:需要生成的随机串位数 letters:只要字母 ...

  6. java中随机生成字符串的方法(三种)

    org.apache.commons.lang(2.6): 链接:https://pan.baidu.com/s/1k_oeA5AjSt6evoR7zT8gpQ 提取码:yhl5 1.生成的字符串每个 ...

  7. Java通过UUID随机生成36位、32位唯一识别码(唯一字符串)

    import java.util.UUID; /** * 通过UUID随机生成36位.32位唯一识别码(唯一字符串) * @author [J.H] * */ public class Test { ...

  8. java如何随机生成定长的字符串

    小数,字符串.时间等示例代码 String base = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 public c ...

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

    原文:http://www.jb51.net/article/45006.htm package p2p_web; import java.util.ArrayList; import java.ut ...

随机推荐

  1. for循环语句示例

    for循环语句示例 一判断/var/目录下所有文件的类型 完整脚本 [root@centos73 ~]# cat shell_scripts/filetype.sh #!/bin/bash #Auth ...

  2. POJ 2443 Set Operation (按位压缩)

    Description You are given N sets, the i-th set (represent by S(i)) have C(i) element (Here "set ...

  3. elementUI中input输入框,强制输入数字,并限制输入长度

    <el-input v-model="item.userScore" onkeyup="this.value=this.value.replace(/[^\d.]/ ...

  4. python笔试做错的题目

    a = [1,2,3] b = a print(id(a),id(b),a == b) print(a,b) b = b + [1,2,3] print(a,b) print(id(a),id(b), ...

  5. vue 项目配置 element 出错

    解决方法: 把main.js文件中的 import 'element-ui/lib/theme-default/index.css' 改为 import 'element-ui/lib/theme-c ...

  6. Django框架(十六)—— cookie和session组件

    目录 cookie和session组件 一.cookie 1.cookie的由来 2.什么是cookie 3.cookie的原理 4.cookie的覆盖 5.在浏览器中查看cookie 6.cooki ...

  7. git 关于commit命令的修改

    1 修改最后一次提交的信息 git commit --amend 2 对于历史提交 git rebase -i HEAD~5 没毛病,

  8. 什么是索引?Mysql目前主要的几种索引类型

    一.索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度. 打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的My ...

  9. Matplotlib ValueError: _getfullpathname: embedded null character

    Traceback (most recent call last): File "<stdin>", line 1, in <module> File &q ...

  10. Encode

    by kinsly 本文的内容均基于python3.5 编码一直是python中的大坑,反正我是一直没搞明白,今天在做爬虫的时候,觉得实在是有必要把这些东西整理一下. 什么是编码 简单的来说就是,为了 ...