难点:汉字转为拼音。

https://github.com/promeG/TinyPinyin

是首先获取的Bean对象:

for (int i = 0; i < dataList.size(); i++) {

//将汉字转化为拼音,并以“,”隔开 如:北京市 -> BEI,JIN,SHI

String s = Pinyin.toPinyin(dataList.get(i).platformName, ",");

String[] strarr = s.split(",");

//取首字母

for (int m = 0; m < strarr.length; m++) {

strarr[m] = strarr[m].substring(0, 1);

}

StringBuffer sb = new StringBuffer();

for (int n = 0; n < strarr.length; n++) {

sb.append(strarr[n]);

}

//s2=BJS

String s2 = sb.toString();

Log.e(TAG, "vgetPlatformListByLetter: s2=" + s2);

//bean的成员变量赋值

dataList.get(i).namePinYin = s2;

}

/**

* 进行冒泡排序

*list 根据bean的成员变量namePinYin 排序

* @param list

*/

public void transferList(Listlist) {

for (int i = 0; i < list.size() - 1; i++) {

for (int j = 0; j < list.size() - 1 - i; j++) {

exchangeNameOrder(j, list);

}

}

}

/**

* 交换两个名字的顺序,根据首字母判断

*

* @param j

* @param list

*/

public void exchangeNameOrder(int j, Listlist) {

String namePinYin1 = list.get(j).namePinYin;

String namePinYin2 = list.get(j + 1).namePinYin;

int size = namePinYin1.length() >= namePinYin2.length() ? namePinYin2.length() : namePinYin1.length();

for (int i = 0; i < size; i++) {

if (!list.get(j).belongLetter.equals(list.get(j + 1).belongLetter)) {

break;

}

char jc = namePinYin1.charAt(i);

char jcNext = namePinYin2.charAt(i);

if (jc < jcNext) {//A在B之前就不用比较了

break;

}

if (jc > jcNext) {//A在B之后就直接交换,让A在前面B在后面

IndexModel nameBean = list.get(j);

list.set(j, list.get(j + 1));

list.set(j + 1, nameBean);

break;

}

//如果AB一样就继续比较后面的字母

}

}

//大数向后移动,每趟排序确定这一趟的最大值,就像冒泡一样。

public void sort_maopao(int arr[]){

for (int i = 0; i < arr.length-1; i++) {

for (int j = 0; j arr[i+1]) {

int temp=arr[i+1];

arr[i+1]=arr[i];

arr[i+1]=temp;

}

}

}

}

android中文首字母排序,Android 实现中文按拼音排序方法相关推荐

  1. java怎么获取中文首字母_Java如何获取中文拼音首字母的方法介绍

    下面小编就为大家带来一篇java获取中文拼音首字母的实例.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 如下所示: import net.sourceforge.pin ...

  2. android 通讯录 首字母索引,android仿微信通讯录搜索(匹配拼音,字母,索引位置标记颜色)...

    前言: 仿微信通讯录搜索功能,通过汉字或拼音首字母找到匹配的联系人并显示匹配的位置 一:先看效果图 字母索引 搜索匹配 二:功能分析 1:汉字转拼音 通讯录汉字转拼音(首个字符当考虑姓氏多音字), 现 ...

  3. SQL 中文首字母提取与自定义排序

    中文首字母提取 利用汉字编码边界值提取 --中文转首字母 select case when regexp_like(t.party_name,'^[a-zA-Z0-9]') then upper(su ...

  4. java首字母排序_Java实现按中文首字母排序的具体实例

    这篇文章主要介绍了Java实现按中文首字母排序的具体实例,有需要的朋友可以参考一下 要实现"按中文首字母排序"操作,可以使用java.util包下的Arrays类的sort()函数 ...

  5. 数字排在最前,英文字母其次,汉字则按照拼音进行排序,获取中文首字母

    中文名称,按照A-Z方式进行排序. import cn.hutool.extra.pinyin.PinyinUtil; import com.alibaba.nacos.client.utils.St ...

  6. js中文首字母排序(二)

    前面写了一篇 js中文首字母排序(一) 链接:http://www.alexpers.com/opuscule/chineseSort/sort.html 文章主要是应用过来js的两个方法,sort( ...

  7. Qt中实现获取中文首字母(GB2312 和 unicode以及调用Unihan实现全汉字拼音转换,支持多音字和生僻字等)和中英文数字排序功能

    Qt5中可以通过qSort接口,结合QLocale类和QCollator类,可以对中文,英文,数字进行排序,但默认排序顺序为数字.英文.中文,但如果需要中英文混合排序的话,需要另外封装方法实现. 这种 ...

  8. java实现字母排序_Java实现按中文首字母排序的具体实例

    要实现"按中文首字母排序"操作,可以使用java.util包下的arrays类的sort()函数. arrays类包含用来操作数组(比如排序和搜索)的各种方法. 比如对于排序操作的 ...

  9. 使用Java对中文首字母进行排序

    前言 最近由于工作需求,需要对行政区划根据中文首字母进行排序,在网上查了些资料,没有什么收获,基本上都是千篇一律.相互"借鉴".因此本人在此做一个整理,以备后续不时之需. 废话不多 ...

  10. java字母排序_【Java】实现按中文首字母排序 | 学步园

    要实现"按中文首字母排序"操作,可以使用java.util包下的Arrays类的sort()函数. Arrays类包含用来操作数组(比如排序和搜索)的各种方法. 比如对于排序操作的 ...

最新文章

  1. Windows Server 2016-安装AD域服务注意事项
  2. 【最强ResNet改进系列】Res2Net:一种新的多尺度网络结构,性能提升显著
  3. 扫描PDF转换成word文档如何操作
  4. Python的StringIO模块和cStringIO模块
  5. php 变成 25,2020-09-25 PHP变量介绍
  6. java model 中文乱码_Java解压zip 解决编码和中文乱码问题
  7. 96. (GO)不同的二叉搜索树
  8. python编辑器对比和推荐
  9. 使用MEF方便的扩展
  10. FAQ宝典之Rancher Server
  11. everything下载哪个版本_Everything敏感信息泄露
  12. 学习git: 忽略某些文件(夹)的跟踪
  13. 学生成绩管理系统sql C#
  14. 求n+nn+nnn+nnnn+nnnnn+nnnnnn
  15. 前端之网站结构语义化
  16. Web1.0时期进入Web3.0时代,即将跨入Web4.0时代
  17. Redis热搜关键词加载,建议收藏
  18. 如何提高查找资料能力
  19. Pure MVC 架构简述
  20. 【工具】FFmpeg|超大视频本地有损压缩,500MB变25MB(支持 Windows、Linux、macOS)

热门文章

  1. FPGA引脚功能说明与分析
  2. php 禁止抓取,服务器反爬虫攻略:Apache/Nginx/PHP禁止某些User Agent抓取网站
  3. Vulkan_Shader—天空盒原理及源码
  4. 学习Mac开发第四弹 通过NSImageView加载图片
  5. PL3366C-ASEMI移动电源管理IC
  6. **遇到“Cannot create file “不要慌**
  7. ##CSAPP读书日记-第九章-虚拟内存
  8. Siney's BLOG - 我也来分析魔兽世界-场景组织
  9. 游艇租用问题算法c语言,租用游艇问题  算法设计分析
  10. 用星号输出一个梯形,如下图所示:(使用嵌套for循环完成)