iOS-汉字排序】的更多相关文章

对于包含汉字的字符串来说,排序的方式主要有两种:一种是拼音,一种是笔画. 本文就讲述如何实现按笔划排序的比较器(Comparator). 作者:Jeff 发表于:2007年12月21日 11:27 最后更新于: 2007年12月21日 12:38 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明.http://www.blogjava.net/jeff-lau/archive/2007/12/21/169257.html 笔画排序 要按笔画排序,就要实现笔画…
对于包含汉字的字符串来说,排序的方式主要有两种:一种是拼音,一种是笔画. 本文就讲述如何实现按拼音排序的比较器(Comparator). 作者:Jeff 发表于:2007年12月21日 11:27 最后更新于: 2007年12月21日 12:38 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明.http://www.blogjava.net/jeff-lau/archive/2007/12/21/169257.html 拼音排序 拼音有好几种方式,其中最主…
<?phpheader("content-type:text/html;charset=utf-8");$array=array('重庆市','上海市','安徽省','吉林省','天津市','内蒙古自治区','沈阳市','浙江省','广东省','云南省');foreach($array as $value){ $arr[]=iconv('UTF-8', 'GBK', $value);}$res=asort($arr);var_dump($arr);#array(10) { [0]…
NSArray利用Cocoa框架进行汉字排序 在NSString有一个函数localizedCompare:,它的功能是通过自身与给定字符串的比較,返回一个本地化的比較结果.也就是说这个函数是支持汉字比較的. Student.h @interface Student : NSObject @property(nonatomic,copy)NSString *stuName; @property(nonatomic,assign)CGFloat stuScore; @property(nonato…
ios没有提供简单的汉字拼音排序方法,在网上看到了oc方法,这里写以下对应的swift方法 var stringCompareBlock: (String,String)->Bool = { (str1:String, str2:String) -> Bool in var nsStr1 = str1 as NSString var nsStr2 = str2 as NSString var encode:NSStringEncoding = CFStringConvertEncodingTo…
这两天公司让做一个Jtable表格的排序,首先按A列排序,在A列相等时按B列排序,B列相等时按C列排序,ABC三列可以任意指定,最多分三列,这样的一个需求.由于我是大神,所以必须做了出来.ok,不自恋了,先上效果图,然后上代码,最后上项目.这也将是我以后的一贯风格,懂得分享才能走的更高!   简单描述一下,瞅准某列,第一次点击升序,第二次点击降序,第三次点击取消排序.图为先按密码升序,然后按用户名升序,最后按年龄降序.   一. 准备工作,及整体思路   我的环境,jdk1.6,jdk1.7,j…
按照汉字的拼音排序,用的比较多是在人名的排序中,按照姓氏的拼音字母,从A到Z排序: 如果存储姓名的字段采用的是GBK字符集,那就好办了,因为GBK内码编码时本身就采用了拼音排序的方法(常用一级汉字3755个采用拼音排序,二级汉字就不是了,但考虑到人名等都是常用汉字,因此只是针对一级汉字能正确排序也够用了). 直接在查询语句后面 添加 order by name asc; 查询结果按照姓氏的升序排序: 如果存储姓名的字段采用的是 utf8字符集,需要在排序的时候对字段进行转码:对于的代码是  or…
对于包含汉字的字符串来说,排序的方式主要有两种:一种是拼音,一种是笔画. 本文就讲述如何实现按拼音排序的比较器(Comparator). 作者:Jeff 发表于:2007年12月21日 11:27 最后更新于: 2007年12月21日 12:38 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明.http://www.blogjava.net/jeff-lau/archive/2007/12/21/169257.html 排序概述 在Java中,对一个数组或…
转自:http://www.cnblogs.com/syxchina/archive/2012/10/11/2720257.html 1 原因 Ios默认使用utf-8格式编码,所以中文在IOS中默认排序是不可以用的,但IOS也支持使用笔画排序的(采用NSString的localizedCompare,可按笔划排序),但我们希望根据拼音排序,并且如果相同可以往后继续比较.详见: http://space.itpub.net/29867/viewspace-688829 http://www.cn…
由于NSArray并不直接支持对汉字的排序,这就要通过将汉字转换成拼音完毕按A~Z的排序,这看起来是个头疼的问题.由于牵扯到汉字转为拼音,kmyhy给出一个较易实现的方法,获取汉字的首字的首字母,如将"王"变成"W". 当中他通过pinyinFirstLetter函数获取中文拼音.函数原理是:"pinyinFirstLetter基于这么一个简单的原理:我们知道,在Objective C语言中,字符串是以unicode进行编码的. 在unicode字符集中,…
业务场景: 一个list集合,里面add了若干个实体类,针对该实体类排序的属性为String. 使用技术,自定义list排序(JDK自带),重写Comparator接口的compare方法,汉字转拼音技术:使用的pinyin4j. pinyin4j官网地址:http://pinyin4j.sourceforge.net/ 不想去官网下载的我这里也有,地址为: //tempRateList 为需要进行自定义排序的集合,SpRate为该集合的实体类,riskName为排序的属性. 直接上方案: 1.…
oracle在9i之前是对汉字的排序是按照二进制编码进行排序的,很不适合我们的国情,在oracle9i之后,汉字的排序方式有了以下三种方式:        1.使用拼音排序   NLS_SORT=SCHINESE_PINYIN_M        2.使用笔画排序   NLS_SORT=SCHINESE_STROKE_M 第一顺序笔画,第二顺序部首:        3.使用偏旁部首排序    NLS_SORT=SCHINESE_RADICAL_M 第一顺序部首,第二顺序笔画:           …
获取汉字的拼音 #import <Foundation/Foundation.h> @interface NSString (Utils) /** * 汉字的拼音 * * @return 拼音 */ - (NSString *)pinyin; @end #import "NSString+Utils.h" @implementation NSString (Utils) //汉字的拼音 - (NSString *)pinyin{ NSMutableString *str =…
获取汉字的拼音 #import <Foundation/Foundation.h> @interface NSString (Utils) /** *  汉字的拼音 * *  @return 拼音 */- (NSString *)pinyin; @end #import "NSString+Utils.h" @implementation NSString (Utils) //汉字的拼音- (NSString *)pinyin{        NSMutableString…
PinYin4Objc是一个在git汉字转拼音的开源库,支持简体和繁体中文.效率POAPinyin等其他库要高,转换库也完整下面简单介绍 实现原理 使用unicode_to_hanyu_pinyin.txt存储汉字编码相对应的拼音,以字典加载到内存中 NSString *resourceName =[[NSBundle mainBundle] pathForResource:@"unicode_to_hanyu_pinyin" ofType:@"txt"]; NSS…
// 数组用系统方法compare做字母的简单排序 NSArray *oldArray = @[@"bac",@"bzd",@"azc",@"azz"]; NSArray *newArray = [oldArray sortedArrayUsingSelector:@selector(compare:)]; NSLog(@"new array = %@",newArray); // 因为NSDictiona…
要排序的对象: 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.s…
简单选择排序的基本思想:(从小到大) 第1趟,在待排序记录r[1]~r[n]中选出最小的记录,将它与r[1]交换: 第2趟,在待排序记录r[2]~r[n]中选出最小的记录,将它与r[2]交换: 以此类推,第i趟在待排序记录r[i]~r[n]中选出最小的记录,将它与r[i]交换,使有序序列不断增长直到全部排序完毕. 代码如下: int main(int argc, const char * argv[]) { @autoreleasepool { NSMutableArray *arr = [NS…
public class ABC { public static void main(String[] args) { new ABC().sortStringArray(); } public void sortStringArray(){ String[] a = new String[]{"Oscar", "Charlie", "Ryan", "Adam", "David","aff&quo…
转载:http://blog.csdn.net/lgx040605112/article/details/6042316 using System; using System.Globalization; using System.Threading; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string[] arr = { "3","1",&…
可以按照区域语言修改排序规则. class Program { static void Main(string[] args) { string[] arr = { "趙(ZHAO)", "錢(QIAN)", "孫(SUN)", "李(LI)", "周(ZHOU)", "吳(WU)", "鄭(ZHENG)", "王(WANG)"}; //发音 LC…
PinYin4Objc 是一个效率很高的汉字转拼音类库,支持简体和繁体中文.有以下特性:1.效率高,使用数据缓存,第一次初始化以后,拼音数据存入文件缓存和内存缓存,后面转换效率大大提高:2.支持自定义格式化,拼音大小写等等:3.拼音数据完整,支持中文简体和繁体,与网络上流行的相关项目比,数据很全,几乎没有出现转换错误的问题.性能比较:与之前的pinyin,POAPinyin和PYMethod等项目比较,PinYin4Objc的速度是非常快的,差不多为:0.20145秒/1000字 https:/…
Python3写法 代码 # -*- coding: utf-8 -*- # 需求:年龄倒序,姓名正序 from itertools import chain from pypinyin import pinyin, Style class Student: def __init__(self, name, age): self.name = name self.age = age def to_pinyin(stu): lst = pinyin(stu.name, style=Style.TO…
import java.text.Collator;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.HashMap;import java.util.List;import java.util.Locale;import java.util.Map;import org.apache.commons.collections.MapUtils;p…
- (NSString *)getFirstString:(ICCustom *)custom {     NSMutableString *source = [custom.merchantAbbreviation mutableCopy];    if(source && custom.merchantAbbreviation.length>0)     {         CFRange range = CFRangeMake(0, 1);        CFStringTra…
NSMutableString *mutableStr = [[NSMutableString alloc]initWithString:string]; if (CFStringTransform((__bridge CFMutableStringRef)mutableStr,0,kCFStringTransformMandarinLatin,NO)) { }//普通话转换成拉丁 if (CFStringTransform((__bridge CFMutableStringRef)mutabl…
这里分享一个中国某种方便的方法,我们放在一起的人脉资源后,方便的类别,使用自己的包, 此处所使用的方法贴,源代码可以在本文的结尾下载. 要记得加头文件 #import "NSArray+SortedChinAndEng.h" 这个头文件在源代码中. NSArray *stringsToSort=@[ @"小明", @"微博", @"你好", @"小米", @"腾讯", @"再见…
NSArray *sortedArray = [array sortedArrayUsingComparator: ^(id obj1, id obj2) { if ([obj1 integerValue] > [obj2 integerValue]) {        return (NSComparisonResult)NSOrderedDescending;    } if ([obj1 integerValue] < [obj2 integerValue]) {        retu…
最近项目上使用到汉字排序的问题,网上搜索了一下后普遍使用下面的方法比较. @Test public void test_sort_pinyin() { Collator cmp = Collator.getInstance(java.util.Locale.CHINA); String[] arr = { "张三", "李四", "王五", "赵六", "JAVA", "123", &q…
1,.定义数组,可以是从后台传回的数据,也可以是自己写的数据(要json格式) 2.定义一个计算属性,用于将汉字排序(多音字的排序不推荐用这个) 3.在页面渲染…