av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Java漢字轉拼音工具類完整代碼實例

瀏覽:121日期:2022-09-04 10:30:47

添加依賴

<dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.1</version></dependency>

工具類代碼:

public class PinYinUtils { public static HanyuPinyinOutputFormat PINYIN_FORMAT; static { PINYIN_FORMAT = new HanyuPinyinOutputFormat(); /** * 大小寫設置 * LOWERCASE:小寫 * UPPERCASE:大寫 */ PINYIN_FORMAT.setCaseType(HanyuPinyinCaseType.LOWERCASE); /** * 輸出音標設置 * * WITH_TONE_MARK:直接用音標符(VCharType必須設置WITH_U_UNICODE,否則會拋出異常) * WITH_TONE_NUMBER:1-4數字表示音標 * WITHOUT_TONE:沒有音標 */ PINYIN_FORMAT.setToneType(HanyuPinyinToneType.WITHOUT_TONE); /** * 特殊音符ü的設置 * WITH_U_AND_COLON:用u表示(沒有設置默認用u表示) * WITH_V:用v表示 * WITH_U_UNICODE:用ü表示 */ PINYIN_FORMAT.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE); } /** * 取漢字的拼音首字母 * @param chinese * @return */ public static String toFirstPinYin(String chinese){ StringBuilder result = new StringBuilder(); //將字符串轉成字符數組 char[] chars = chinese.toCharArray(); try { for (char c : chars) {//是中文則進行轉換if(String.valueOf(c).matches('[u4e00-u9fa5]+')){ String[] pinyinStr = PinyinHelper.toHanyuPinyinStringArray(c, PINYIN_FORMAT); result.append(pinyinStr[0].charAt(0));//取每個中文的第一個拼音字母}else { result.append(c);} } } catch (BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination) { badHanyuPinyinOutputFormatCombination.printStackTrace(); } return result.toString(); } /** * 漢字轉拼音小寫 * @param chinese * @return */ public static String toPinYin(String chinese){ //創建返回對象 StringBuilder result = new StringBuilder();//方法調用的時候新建,對象沒有共享,不會有線程安全問題。 //將字符串轉成字符數組 char[] chars = chinese.toCharArray(); try { for (char c : chars) {//是中文則進行轉換if(String.valueOf(c).matches('[u4e00-u9fa5]+')){ String[] pinyinStr = PinyinHelper.toHanyuPinyinStringArray(c, PINYIN_FORMAT);// result.append(pinyinStr[0].charAt(0));//取每個中文的第一個拼音字母 result.append(pinyinStr[0]);}else { result.append(c);} } } catch (BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination) { badHanyuPinyinOutputFormatCombination.printStackTrace(); } return result.toString(); } /** * 漢字轉拼音每個字符串的第一個字母大寫其余小寫 * @param chinese * @return */ public static String toUpperStringsFirstCharPinYin(String chinese){ //創建返回對象 StringBuilder result = new StringBuilder();//方法調用的時候新建,對象沒有共享,不會有線程安全問題。 //將字符串轉成字符數組 char[] chars = chinese.toCharArray(); try { for (char c : chars) {//是中文則進行轉換if(String.valueOf(c).matches('[u4e00-u9fa5]+')){ String[] pinyinStr = PinyinHelper.toHanyuPinyinStringArray(c, PINYIN_FORMAT);// result.append(pinyinStr[0].charAt(0));//取每個中文的第一個拼音字母 String c1 = String.valueOf(pinyinStr[0]); result.append(c1.substring(0,1).toUpperCase()).append(c1.substring(1));}else { result.append(c);} } } catch (BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination) { badHanyuPinyinOutputFormatCombination.printStackTrace(); } return result.toString(); } public static void main(String[] args) { //測試StringBuilder是否有線程安全問題 String str = '拼音工具lv'; String pinYin = toUpperStringsFirstCharPinYin(str); System.out.println(pinYin); }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 国产视频在线观看视频 | 国产欧美日韩视频 | a天堂视频 | 婷婷在线视频 | 亚洲第一色 | 欧美又大又硬又粗bbbbb | 超碰99在线 | 涩色av | 成人免费视频观看视频 | 男女视频网站 | 五月天在线观看 | 欧美成人a | 性欧美bbw | 国产裸体永久免费视频网站 | 五月婷婷色 | 国产精品国产三级国产专区53 | 懂色av一区二区三区 | 欧美国产综合 | 亚洲视频在线观看免费 | 久久久天堂国产精品女人 | 蜜桃一区二区 | 国产激情 | 夜夜操夜夜 | 五月天婷婷丁香 | 亚洲久久久 | 欧美视频精品 | 日韩精品在线播放 | 中文在线字幕观看 | 黄色片在线播放 | 国产乱淫片视频 | 人人澡人人爽 | 99视频在线精品免费观看2 | 亚洲专区在线 | 成人福利在线观看 | www.色偷偷 | 中文字幕系列 | 一区二区三区视频 | 好吊妞这里只有精品 | 日韩欧美综合 | 亚洲黄色精品 | 在线免费观看黄色片 |