前言:
仿微信通讯录搜索功能,通过汉字或拼音首字母找到匹配的联系人并显示匹配的位置
一:先看效果图
字母索引
搜索匹配
二:功能分析
1:汉字转拼音
通讯录汉字转拼音(首个字符当考虑姓氏多音字), 现在转换拼音常见的有pinyin4j和tinypinyin, pinyin4j的功能强大,包含声调多音字,tinypinyin执行快占用内存少, 如果只是简单匹配通讯录,建议使用tinypinyin,用法也很简单这里不详细介绍
拼音类
public class CNPinyin implements Serializable, Comparable> {
/**
* 对应首字首拼音字母
*/
char firstChar;
/**
* 所有字符中的拼音首字母
*/
String firstChars;
/**
* 对应的所有字母拼音
*/
String[] pinyins;
/**
* 拼音总长度
*/
int pinyinsTotalLength;
public final T data;
CNPinyin(T data) {
this.data = data;
}<