难点:汉字转为拼音。

https://github.com/promeG/TinyPinyin

是首先获取的Bean对象:

for (int i = 0; i < dataList.size(); i++) {//将汉字转化为拼音,并以“,”隔开 如:北京市 -> BEI,JIN,SHIString 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=BJSString s2 = sb.toString();Log.e(TAG, "vgetPlatformListByLetter: s2=" + s2);//bean的成员变量赋值dataList.get(i).namePinYin = s2;}/**     * 进行冒泡排序     *list 根据bean的成员变量namePinYin 排序     * @param list     */    public void transferList(List list) {        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, List list) {        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;            }        }    }}

更多相关文章

  1. android开发时 使用android layout editor 打开xml时eclipse自动
  2. 搭建环境变量时遇到的三个错误
  3. Android(安卓)内存泄漏检测
  4. Mac Android(安卓)Studio快捷键整理
  5. Android动态设置主题样式
  6. 在Android4.0 SDK的tools目录中运行模拟器emulator的环境变量的
  7. Android---配置adb环境变量
  8. android ndk 给结构体赋值的方法
  9. Android(安卓)下的 makefile 组织结构

随机推荐

  1. Android之微信第三方登录
  2. Android(安卓)依赖中的jar 包获取方式
  3. Android(安卓)面部识别之一(SDK自带检测检
  4. Android碎片机制
  5. Android(安卓)任务、进程和线程
  6. 招聘安卓手游软件开发工程师/Android手游
  7. 【iOS】OC与JS交互 网页中调用JS与JS注入
  8. 【Rayeager PX2分享】修改安卓开机后进入
  9. android的单例设计模式
  10. 基于Ubuntu 12.04的Android内核源码下载