加密生成指定长度_那些奇奇怪怪的需求(一):PinyinHelper的使用、生成指定长度的随机码...
背景:
需求是要給每條數(shù)據(jù)生成一個字符拼音首字母+6位字母數(shù)字的隨機(jī)碼。嗯簡單易懂。
1、生成6位長度的隨機(jī)碼。
這玩意還挺好理解的,首先明白字符串String是由一個一個char字符組成的數(shù)組(字面理解)。String里面有個方法charAt(int i),i參數(shù)是指String字符串的下標(biāo)索引(也就是char[]數(shù)組的下標(biāo)索引),
比如一個
String str = "哈哈哈123abc";//這里不分中英文數(shù)字限制,一個字符就占用一個位置
System.out.println(str.charAt(2));//很容易得到一個哈
所以現(xiàn)在就這樣,看需求是要生成6個長度的數(shù)字+大小寫字母混合,那我們就先聲明一個字符串存儲所有數(shù)字和英文字符,之后寫一個循環(huán),出口為長度6,用StringBuilder每次添加一個就行了。很容易得到代碼:
完整代碼
測試
2、獲取字符拼音首字母。
這個需求也好理解,就好像輸入【搞黃色】,能得到【GHS】一樣。菜雞的我一看到需求其實不知道怎么下手,畢竟短暫的生涯中暫時還沒寫過跟中文字符打交道的代碼,不過作為一名合格的CV戰(zhàn)士,通過網(wǎng)上沖浪,知道了別人已經(jīng)造好了輪子,有個PinYin4j的東西,專門用來獲取指定字符(參數(shù)也都是用char字符接收)的拼音。
舒服啊大神還是多,所以馬上就用了起來,
首先maven引入依賴:
依賴
代碼簡單粗暴,直接拿PinyinHelper工具類使用就行了。
這里我們可以很容易發(fā)現(xiàn)一個方法:toHanyuPinyinStringArray(char ch),返回是String數(shù)組,測試一下很容易能得出結(jié)論。
多音字也能都把各種拼音打印出來
不過方法里面每次只能輸入一個字,需求是需要字符串,也就是多個字符組成的,所以我們就自己改造一下方法。String有個toCharArray()方法,就是把字符串轉(zhuǎn)化為字符數(shù)組,因此很容易可以寫出來。
完整代碼
總結(jié)
以上是生活随笔為你收集整理的加密生成指定长度_那些奇奇怪怪的需求(一):PinyinHelper的使用、生成指定长度的随机码...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 文件末尾增加内容_java
- 下一篇: 断网python第三方库安装_断网环境下