91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java 實現根據漢字生成拼音全拼或拼音首字母

發布時間:2020-11-03 15:55:59 來源:億速云 閱讀:243 作者:Leah 欄目:開發技術

今天就跟大家聊聊有關java 實現根據漢字生成拼音全拼或拼音首字母,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

1.情景展示

  java 根據中文生成對應的拼音 

2.準備工作

  所需jar包:pinyin4j-2.5.0.jar   

3.解決方案

  導包

import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;

  代碼實現

/**
 * 根據漢字生成拼音全拼或拼音首字母
 * @explain
 * @author Marydon
 * @creationTime 2020年5月14日下午4:26:30
 * @version 1.0
 * @since
 * @email marydon20170307@163.com
 */
public class GetPinyin {
    /**
     * 得到全拼
     * @param str
     * @return 全拼(小寫)
     */
    public static String getPinYin(String str){
        char t1[]=null;
        t1=str.toCharArray();
        String[] t2=new String[t1.length];
        HanyuPinyinOutputFormat t3=new HanyuPinyinOutputFormat();
        t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
        t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
        t3.setVCharType(HanyuPinyinVCharType.WITH_V);
        String t4="";
        int t0=t1.length;
        try {
            for ( int i = 0; i < t0; i++ ) {
                //是用來判斷是不是中文的一個條件,采用的是unicode編碼
                if(Character.toString(t1[i]).matches("[\\u4E00-\\u9FA5]+")){
                    t2= PinyinHelper.toHanyuPinyinStringArray(t1[i],t3);
                    t4+=t2[0];
                }else {
                    t4+=Character.toString(t1[i]);
                }
            }
            return t4;
        } catch ( BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination ) {
            badHanyuPinyinOutputFormatCombination.printStackTrace();
        }
        return t4;
    }
 
    /**
     * 得到漢字首字母的拼音
     * @param str
     * @return 拼音首字母(大寫)
     */
    public static String getPinYinHeaderChar(String str){
        String convert="";
        for ( int i = 0; i < str.length(); i++ ) {
            char word=str.charAt(i);
            String[] pinYinArray=PinyinHelper.toHanyuPinyinStringArray(word);
            if ( pinYinArray!=null ){
                convert+=pinYinArray[0].charAt(0);
            }else {
                convert+=word;
            }
        }
        return convert.toUpperCase();
    }
 
  //測試
    public static void main(String[] args) {
        System.out.println(getPinYin("火影忍者Marydon"));
        System.out.println(getPinYinHeaderChar("海賊王"));
    }
}

4.效果展示 

java 實現根據漢字生成拼音全拼或拼音首字母

看完上述內容,你們對java 實現根據漢字生成拼音全拼或拼音首字母有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丹江口市| 金沙县| 济源市| 昌江| 肇州县| 宿迁市| 鸡西市| 清徐县| 和田县| 东兰县| 定州市| 凤翔县| 上虞市| 陇南市| 绥宁县| 三河市| 深水埗区| 泌阳县| 潼关县| 南平市| 远安县| 六枝特区| 灵石县| 孝感市| 遂宁市| 邻水| 临湘市| 德保县| 莲花县| 浦江县| 葫芦岛市| 锡林郭勒盟| 黑河市| 定襄县| 历史| 洱源县| 浏阳市| 景宁| 旺苍县| 诸暨市| 凤庆县|