目录
在 Java 中获取名字的首字母拼音通常是用来处理中文姓名或文本信息的场景,特别是在一些需要排序、显示、或者搜索的应用中
第一步:加相关的pom依赖
<!-- 拼音库-->
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.1</version>
</dependency>
第二步:给它个工具类
package com.qinhuan.util;
import net.sourceforge.pinyin4j.PinyinHelper;
/**
* @ClassName PinYinUtils
* @Description 描述
* @Author LiQinHuan
* @Date 2024/11/24 22:36
*/
public class PinYinUtils {
public static String getPinYin(String chinese){
//判断是否为空
if(chinese==null && chinese.length()==0 && chinese.trim().isEmpty()){
throw new RuntimeException("字符串不能为空");
}
//创建StringBuilder对象
StringBuilder stringBuilder = new StringBuilder();
//遍历
for (int i = 0; i < chinese.length();i++){
//获取单个字符
char c = chinese.charAt(i);
//判断是否为汉字
String[] strings = PinyinHelper.toHanyuPinyinStringArray(c);
if(strings!=null){
stringBuilder.append(strings[0].charAt(0));
}else{
//否则直接添加
stringBuilder.append(c);
}
}
//返回
return stringBuilder.toString();
}
}
第三步:就可以测试啦
package com.qinhuan.text;
import com.qinhuan.util.PinYinUtils;
/**
* @ClassName demo
* @Description 描述
* @Author LiQinHuan
* @Date 2024/11/24 22:32
*/
public class demo {
public static void main(String[] args) {
System.out.println(PinYinUtils.getPinYin("李沁欢"));
System.out.println(PinYinUtils.getPinYin("顾凌云"));
}
}
第四步:测试的结果为
希望共同学习共同进步!!!