android应用按照字母表排名(包含英文字母开头的)
Collections.sort(appInfoList, new Comparator<String>() {@Overridepublic int compare(String appName1, String appName2) {//拼音排序String str1 = getPingYin(appName1);String str2 = getPingYin(appName2);return str1.compareTo(str2);}});
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;public static String getPingYin(String inputString) {if (TextUtils.isEmpty(inputString)) {return "#";}HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();format.setCaseType(HanyuPinyinCaseType.LOWERCASE);format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);format.setVCharType(HanyuPinyinVCharType.WITH_V);char[] input = inputString.trim().toCharArray();StringBuilder output = new StringBuilder();try {for (char curchar : input) {if (Character.toString(curchar).matches("[\\u4E00-\\u9FA5]+")) {String[] temp = PinyinHelper.toHanyuPinyinStringArray(curchar, format);if (temp == null || temp.length == 0) {output.append("#");} else {output.append(temp[0]);}} else if (Character.isAlphabetic(curchar)) {output.append(Character.toLowerCase(curchar));} else {output.append("#");}}} catch (BadHanyuPinyinOutputFormatCombination e) {e.printStackTrace();}return output.toString();}public static boolean isChineseCharacter(char ch) {return '\u4E00' < ch && ch < '\u9FA5';}
android应用按照字母表排名(包含英文字母开头的)相关推荐
- 检测字符串是否包含英文字母
应用String类的toCharArray()方法.首先通过方法将指定的字符串转换为字符数组,循环字符数组,根据字符的ASCII值判断是否包含英文字母 创建JavaBean类,判断字符串是否包含英文字 ...
- 输入一行字符,分别统计出包含英文字母、空格、数字
题目描述: 输入一行字符,分别统计出包含英文字母.空格.数字和其它字符的个数. 输入描述: 输入一行字符串,可以有空格 输出描述: 统计其中英文字符,空格字符,数字字符,其他字符的个数 思路: imp ...
- 正则 以小写英文字母开头,且只能包含英文字母、数字、下划线
Element 表单验证{ pattern:/^[a-z][a-z0-9_]*$/g, message: '以小写英文字母开头,且只能包含英文字母.数字.下划线' }
- 请输入汉字、英文、数字或其组合/请输入6-18位字符,同时包含英文字母、数字、下划线,并且以英文字母开头/8-16位数字、字母、特殊字符组合
var Util = {} Util.Reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^0\.([0][1-9]$))|(^0\.[1-9][0-9]?)|(^0$ ...
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字_灵思致远Leansmall的博客-CSDN博客_java判断字符串只包含数字字母
import java.util.regex.Matcher; import java.util.regex.Pattern;public class StrValidate {// 纯数字priva ...
- 判断字符串中是否仅包含英文字母、数字和汉字
/*** 判断字符串中是否仅包含英文字母.数字和汉字* @param str* @return*/public static boolean isLetterDigitOrChinese(String ...
- [C语言]统计单词:输入一行字符(其中仅包含英文字母和空格),用函数编程统计其中有多少单词。假设单词之间以空格分开。
输入 输入一行字符(其中仅包含英文字母和空格),并且长度不超过20. 输出 输出单词数量,单词之间以空格分开. 输入示例 I am a student 输出示例 4 数据范围 输入为字符串,并且长度不 ...
- 正则表达式: 以英文字母开头,只能包含英文字母、数字、下划线
//以英文字母开头,只能包含英文字母.数字.下划线 ^[a-zA-Z][a-zA-Z0-9_]*$ //只能包含英文字母.数字.下划线 ^[a-zA-Z0-9_]+$ //过滤非法字符 [@/'&qu ...
- Java实验9 T4.统计文件的所有短文中包含英文字母的个数
题目要求 在文本文件bigbook.txt中包含有很长篇幅的英语短文,编写程序要求统计文件的所有短文中包含英文字母"A"的个数,并显示统计的时间. Java代码 import ja ...
最新文章
- 【分享】博士生提高科研幸福感的途径
- SSAS分区数据量过大处理参考 转- Recommended Practices with Partitions and Aggregations
- 2016年第七届蓝桥杯C/C++ B组国赛 —— 第三题:棋子换位
- SAP Spartacus的单页面应用特性
- Linux 相关小技巧
- input file 上传图片判断图片的宽高尺寸
- 关于用POI和EXCEL交互的问题
- Tensorflow实现VGG网络
- maven添加ojdbc6.jar包
- Rose软件安装教程
- DOSBOX 安装与使用
- STM32CubeIDE 入门
- java实现打印金字塔
- 西游记中人物对应PMP项目管理中的角色分析
- C/C++蓝桥杯三升序列
- ABP框架引入easyUI
- Java零基础个人学习路线总结
- 银河麒麟系统部署.net core环境
- 基于单片机体温心率检测仪系统设计(毕业)资料
- 【BZOJ】4355: Play with sequence