IOS 汉字拼音排序
来源:互联网 发布:三菱编程器fx20p 编辑:程序博客网 时间:2024/05/24 00:17
在网上找了好久,没有找到IOS版拼音排序的好例子,在项目中用到了排序,总结出来之后,写了一个小例子供大家参考
-(NSMutableArray*) sortByPinyin:(NSMutableArray*)stringsToSort{//获取字符串中文字的拼音首字母并与字符串共同存放NSMutableArray *chineseStringsArray=[NSMutableArray array];for(int i=0;i<[stringsToSort count];i++){ChineseString *chineseString=[[ChineseString alloc]init];chineseString.string=[NSString stringWithString:[stringsToSort objectAtIndex:i]];if(chineseString.string==nil){chineseString.string=@"";}if(![chineseString.string isEqualToString:@""]){NSString *pinYinResult=[NSString string];for(int j=0;j<chineseString.string.length;j++){NSString *singlePinyinLetter=[[NSString stringWithFormat:@"%c",pinyinFirstLetter([chineseString.string characterAtIndex:j])]uppercaseString];pinYinResult=[pinYinResult stringByAppendingString:singlePinyinLetter];}chineseString.pinYin=pinYinResult;}else{chineseString.pinYin=@"";}[chineseStringsArray addObject:chineseString];}//Step3:按照拼音首字母对这些Strings进行排序NSArray *sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"pinYin" ascending:YES]];[chineseStringsArray sortUsingDescriptors:sortDescriptors];// Step4:如果有需要,再把排序好的内容从ChineseString类中提取出来NSMutableArray *result=[NSMutableArray array];for(int i=0;i<[chineseStringsArray count];i++){[result addObject:((ChineseString*)[chineseStringsArray objectAtIndex:i]).string];}return result;}
例子链接
0 0
- IOS 汉字拼音排序
- 按照汉字拼音排序
- 汉字拼音排序
- 汉字按拼音排序
- 汉字按照拼音排序
- 汉字按拼音排序
- 汉字拼音排序
- 关于汉字拼音排序
- 汉字按照拼音排序
- iOS 汉字转拼音
- iOS 汉字转拼音
- IOS 汉字转拼音
- iOS:汉字转拼音
- iOS 汉字转拼音
- iOS汉字转拼音
- ios 汉字转拼音
- IOS汉字转成拼音
- iOS 汉字转拼音
- 数据库设计之总账与流水账设计
- python工具记录
- 【Android进阶】ScrollView内嵌套ListView时禁止ListView的滚动
- 配置facebook sdk
- 目录下面文件名的排序
- IOS 汉字拼音排序
- linux在后台运行一个命令
- 重构Extract Method中关于从源函数提取目标函数的疑问
- Linux下常用压缩格式的压缩与解压方法
- Android仿微信小视频录制功能(二)
- OpenLayers 学习(三)矢量图层上添加点绘制点、线、多边形
- UIWebView监听ajax请求
- css 当用id选择器与 class 选择器选择同一目标但是应用不同修饰时的选择问题
- setsockopt 设置 SO_LINGER 在Android socket编程中的一个问题: