千家信息网

java获取中文拼音首字母工具类定义与实例用法

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要讲解了"java获取中文拼音首字母工具类定义与实例用法",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"java获取中文拼音首字母工具类定义与
千家信息网最后更新 2025年01月20日java获取中文拼音首字母工具类定义与实例用法

这篇文章主要讲解了"java获取中文拼音首字母工具类定义与实例用法",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"java获取中文拼音首字母工具类定义与实例用法"吧!

本文实例讲述了java获取中文拼音首字母工具类定义与用法。分享给大家供大家参考,具体如下:

package com.sw.documentary.common.utils;public class GB2Alpha {  //字母Z使用了两个标签,这里有27个值  //i, u, v都不做声母, 跟随前面的字母  private char[] chartable =      {        '啊', '芭', '擦', '搭', '蛾', '发', '噶', '哈', '哈',        '击', '喀', '垃', '妈', '拿', '哦', '啪', '期', '然',        '撒', '塌', '塌', '塌', '挖', '昔', '压', '匝', '座'      };  private char[] alphatable =      {        'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I',        'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',        'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'      };  private int[] table = new int[27];  //初始化  {    for (int i = 0; i < 27; ++i) {      table[i] = gbValue(chartable[i]);    }  }  public GB2Alpha() {  }  //主函数,输入字符,得到他的声母,  //英文字母返回对应的大写字母  //其他非简体汉字返回 '0'  public char Char2Alpha(char ch) {    if (ch >= 'a' && ch <= 'z')      return (char) (ch - 'a' + 'A');    if (ch >= 'A' && ch <= 'Z')      return ch;    int gb = gbValue(ch);    if (gb < table[0])      return '0';    int i;    for (i = 0; i < 26; ++i) {      if (match(i, gb)) break;    }    if (i >= 26)      return '0';    else      return alphatable[i];  }  //根据一个包含汉字的字符串返回一个汉字拼音首字母的字符串  public String String2Alpha(String SourceStr){    String Result = "";    int StrLength = SourceStr.length();    int i;    try {      for (i = 0; i < StrLength; i++) {        Result += Char2Alpha(SourceStr.charAt(i));      }    } catch (Exception e) {      Result = "";    }    return Result;  }  private boolean match(int i, int gb) {    if (gb < table[i])      return false;    int j = i + 1;    //字母Z使用了两个标签    while (j < 26 && (table[j] == table[i])) ++j;    if (j == 26)      return gb <= table[j];    else      return gb < table[j];  }  //取出汉字的编码  private int gbValue(char ch) {    String str = new String();    str += ch;    try {      byte[] bytes = str.getBytes("GB2312");      if (bytes.length < 2)        return 0;      return (bytes[0] << 8 & 0xff00) + (bytes[1] &          0xff);    } catch (Exception e) {      return 0;    }  }  public static void main(String[] args) {    GB2Alpha obj1 = new GB2Alpha();    System.out.println(obj1.String2Alpha("我们"));    System.out.println(obj1.String2Alpha("欢迎你"));    return;  }}

运行结果:

JBZJHYN

感谢各位的阅读,以上就是"java获取中文拼音首字母工具类定义与实例用法"的内容了,经过本文的学习后,相信大家对java获取中文拼音首字母工具类定义与实例用法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

字母 拼音 实例 工具 中文 汉字 学习 两个 内容 字符 字符串 标签 就是 思路 情况 文章 更多 知识 知识点 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库原理与技术是什么 手机软件开发学什么技术 网络安全我们在行动视频 bi工程师和软件开发工程 视频终端服务器 怎样做好网络安全宣传 软件开发项目管理的核心是 安装数据库软件的心得体会 从哪里获得网络安全秘钥 华为平板注册账号服务器繁忙 网络安全股分享 统一软件开发的方法 软件开发管理 百度文库 美one科技互联网有限公司 我县开展网络安全周 数据库服务自动启动不了 京东物流数据库技术 局域网网络安全教育 苏州打造智慧工厂软件开发 网络安全构成体系是什么 网络安全培训课程3个月 未转变者不用服务器联机 小型数据库如何开发 计算机网络技术什么课程重要 数据库在使用中可以还原 海南金财网络技术有限公司电话 拳头的账号可以登陆每个服务器吗 网络安全教育作文450字 spark连接第三方数据库 谁在维护区块链的服务器
0