首页 > 编程语言 >java如何取得拼音的首字母

java如何取得拼音的首字母

时间:2024-06-01 18:30:29浏览次数:11  
标签:pinyinArray java 拼音 首字母 result input public String

package com.junfun.pms;

import net.sourceforge.pinyin4j.PinyinHelper;

public class PinyinUtils {

    public static String getFirstLetter(String input) {
        StringBuilder result = new StringBuilder();
        for (char c : input.toCharArray()) {
            String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(c);
            if (pinyinArray != null && pinyinArray.length > 0) {
                result.append(pinyinArray[0].charAt(0));
            } else {
                result.append(c);
            }
        }
        return result.toString().toUpperCase();
    }

    public static void main(String[] args) {
        String input = "切记一定是拼音";
        String firstLetters = getFirstLetter(input);
        System.out.println("拼音首字母:" + firstLetters);
    }
}

标签:pinyinArray,java,拼音,首字母,result,input,public,String
From: https://blog.csdn.net/weixin_42759398/article/details/139292837

相关文章

  • java8,频繁old gc,通过修改g1回收器之后,效果很好
    原配置:-Xms15360m-Xmx15360m-XX:NewSize=4096m-XX:MaxNewSize=4096m-XX:MetaspaceSize=512m-XX:MaxDirectMemorySize=1024m-XX:+UseG1GC-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPath=/data/logs/skynet-\${DAOKEAPPUK}/\${DAOKEAPPUK}_heapDump.hprof-XX:+UseC......
  • Java base(1):注解、泛型、通配符、重载、重写
    注解:用于在代码中插入元数据,不会直接影响程序的执行,但可以被编译器、开发工具或运行时环境用来处理特定任务,如编译时检查、生成额外的代码、进行框架级配置等。预定义注解:java给的,例如:@Override:用于标记一个方法是重写父类的方法。自定义注解元注解:注解其他注解的注解。元数......
  • 报错信息:Unable to make field private final java.lang.Class java.lang.invoke.Seri
    jdk版本与当前MyBatisPlus版本不兼容解决方法:1.升级MyBatisPlus的版本。2.或者使用以下方法--add-opensjava.base/java.lang.invoke=ALL-UNNAMED......
  • (JAVA)设计模式-适配器模式
    模式的定义和特点:适配器模式(Adapter)是一种将一个类的接口转换成客户希望的另外一个接口的设计模式,可以提高代码的复用性和灵活性。结构与实现:定义一个适配器类来实现业务接口,再继承现有组件库中已经存在的组件。示例:创建业务接口类:点击查看代码publicinte......
  • Java中的网络编程:构建稳健的分布式应用
            网络编程是Java开发中至关重要的一部分,特别是在构建分布式系统和网络应用程序时。Java提供了丰富的网络编程API和库,使开发者能够轻松创建各种网络应用。本文将介绍Java中的网络编程基础、常用的网络通信协议、以及如何利用Java构建稳健的分布式应用。####1.......
  • Java中的Lambda表达式与函数式接口:简化代码与提升效率
            Lambda表达式自Java8引入以来,已成为Java编程中提高代码简洁性与效率的一种重要特性。Lambda表达式允许你以匿名函数的方式来编写方法,使代码更简洁,增强了集合库的功能,尤其是在处理集合操作时。本文将探讨Lambda表达式的基本概念、函数式接口的用途,以及如何在实......
  • Java多线程编程:提高程序性能与响应性
            多线程编程是利用计算机的多核心优势来提高程序的性能和响应性的重要手段之一。在Java中,通过多线程可以实现同时执行多个任务,充分利用CPU资源,加速程序的运行。本文将深入探讨Java多线程编程的基本概念、常用类库、并发问题以及最佳实践。####1.多线程基础概......
  • java选择题
    题目来自牛客网1.为初始化其成员变量,每个类都定义的方法是()A.方法B.mainC.构造方法D.对象正确答案:C.构造方法构造方法是一种特殊的方法,用于在创建对象时初始化对象的状态。它与类名相同,没有返回类型,并且在创建对象时自动调用。构造方法可以有参数,允许在创建对象时传递初......
  • Java泛型中<? extends E>和<? super E>的区别
    <?extendsE>      <?extendsE>是UpperBound(上限)的通配符,用来限制元素的类型的上限,比如List<?extendsFruit>fruits;表示集合中的元素类型上限为Fruit类型,即只能是Fruit或者Fruit的子类,因此对于下面的赋值是合理的fruits=newArrayList<Fruit>();fruits......
  • GraalVM - Java8 Linux AMD64
    使用GraalVM在linuxamd64环境下编译Java8程序的步骤主要包括:下载GraalVM下载native-image安装native-image编译程序1.下载GraalVM可以通过Github的release页面直接下载(往回找,找到支持java8的graalvm-ce-java8-linux-amd64-20.3.2.tar.gz)https://github.com/graalvm/gra......