字符串工具类总结(全)
Posted 穆雄雄
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串工具类总结(全)相关的知识,希望对你有一定的参考价值。
文章目录
大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂
现在是:2022年7月9日18:53:37
前言
最近在项目过程中整理了一些常用的方法,于是将其抽出来形成一个工具类。
下面我来分享一下我自己整理的一些工具方法:
代码展示
👉生成随机文件名:当前年月日时分秒+五位随机数
这个没啥说明的,就是为了生成一个不重复的文件名,代码如下:
public static String getRandomNo()
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
Date date = new Date();
String str = simpleDateFormat.format(date);
Random random = new Random();
// 获取5位随机数
int ranNum = (int) (random.nextDouble() * (99999 - 10000 + 1)) + 10000;
// 当前时间
return "P" + ranNum + str;
🤞输入:无需传参数
✌输出:P7910620220709
👉生成固长字符串
就是指定一个长度,让代码生成一个指定长度的字符串,代码如下:
/**
* 生成固长字符串
* @param length
* @return
*/
public static String getRandomStringNum(int length) //length表示生成字符串的长度
String base = "ABCDEFGHJKLMNPQRSTUVWXYZ123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++)
int number = random.nextInt(base.length());
sb.append(base.charAt(number));
return sb.toString();
🤞输入:5
✌输出:VDR58
🤞输入:10
✌输出:EZF9HR5641
👉生成8位随机数
生成8位数的随机数,这个生成的是数字,上一个生成的是字符加数字。代码如下:
/**
* 生成8位随机数
* @return
*/
public static String getNonce_str()
String SYMBOLS = "0123456789";
Random RANDOM = new SecureRandom();
char[] nonceChars = new char[8];
for (int index = 0; index < nonceChars.length; ++index)
nonceChars[index] = SYMBOLS.charAt(RANDOM.nextInt(SYMBOLS.length()));
return new String(nonceChars);
🤞输入:无需输入参数
✌输出:71282570
👉将String
类型的字符串按照逗号生成集合
比如有字符:王炎霸,范啸天,炎王霸,霸王炎,那么使用该工具就会生成一个集合,集合中有四个元素,分别是这几个姓名。代码如下:
/**
* String转List<Long>
* @return
*/
public static List<Long> transStringList(String str)
List<String> longList = new ArrayList<>();
if (StringUtils.isBlank(str))
return longList;
String[] strArray = str.split(",");
for (String strStr: strArray)
try
longList.add(strStr);
catch (NumberFormatException e)
e.printStackTrace();
return longList;
🤞输入:“王炎霸,范啸天,炎王霸,霸王炎”
✌输出:王炎霸
范啸天
炎王霸
霸王炎
需要注意的是,逗号必须是英文的,因为代码中是根据英文逗号进行截取的。
👉将String
类型的字符串按照逗号生成集合(Long
类型)
比如有字符:111111111111,22222222222,3333333333,4444444444,55555555那么使用该工具就会生成一个集合,集合中有5个元素,分别是这几个姓名。代码如下:
/**
* String转List<Long>
* @return
*/
public static List<Long> transLongList(String str)
List<Long> longList = new ArrayList<>();
if (StringUtils.isBlank(str))
return longList;
String[] strArray = str.split(",");
for (String strStr: strArray)
try
longList.add(Long.parseLong(strStr));
catch (NumberFormatException e)
e.printStackTrace();
return longList;
🤞输入:“111111111111,22222222222,3333333333,4444444444,55555555”
✌输出:111111111111
22222222222
3333333333
4444444444
55555555
最后的这两个方法,其实可以变换着来,现在是实现了String
和Long
类型了,boolean
和int
类型也是一样的道理。
以上是关于字符串工具类总结(全)的主要内容,如果未能解决你的问题,请参考以下文章