几种map的排序规则】的更多相关文章

前几天在做理事会成员的时候遇到这个问题,需要根据职务的顺序,放入对应的成员,再把成员名字按首字母拼音顺序排序后,返回给前台解析,之前一直用TreeMap来存放这个排过序的List集合,发现就算我最先循环出来放进TreeMap中,最后打印整个TreeMap的时候发现还是有不按先进先出的规则排序,百度之后发现各个map的排序规则不一样,最后用LinkedHashMap解决了问题. HashMap:无序排列,一般看不出规则 TreeMap:数字的话,按照数字升序,ascII等 LinkedHashMa…
什么是排序规则(collation) 关于SQL Server的排序规则,估计大家都不陌生,在创建数据库时我们经常要选择一种排序规则(conllation),一般我们会留意到每一种语言的排序规则都有许多种,比如标准大陆简体中文Chinese_PRC的排序规则就有数十种之多 这些排序规则有什么作用呢?让我们先来看看MS官方的解释: 排序规则指定了表示每个字符的位模式.它还指定了用于排序和比较字符的规则.排序规则具有下面的特征: 语言 区分大小写 区分重音 区分假名 比如在SQL Server 20…
在使用数据库的过程中,总会碰到一些特别的需求.有时候需要储存中文字符,区分大小写或者按照中文的比划顺序排序.这就涉及到了对数据库排列规则的选择. 我们一般可以选择数据库名称-->右键属性(Properties)-->功能(optiotion)-->排序方式(Collation)选择. * 由于没有中文版的数据库,中文翻译可能有误.   那这些不同的排序方式究竟有什么区别呢? 排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集. 如: Chinese_PRC_CI_AS 前半部…
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary { display: block } audio,canvas,progress,video { display: inline-block; vertical-align: baseline } audio:not([co…
注意Vietnamese_CI_AS排序规则下的特殊字符大小敏感问题   最近,在SQL Server中遇到了Vietnamese_CI_AS排序规则的特殊字符的大小写敏感问题,是的,你没有看错,这句话并没有语病(DBA老司机懂的).遇到这个特殊情况的时候,我也大跌眼镜,颠覆我的一些常识,OK,闲话少说,我们来演示一下这个特殊场景下出现的特殊情况. 准备测试环境: 服务器排序规则(Server Collation)         :  Latin1_General_CI_AS 数据库排序规则(…
sqlserver的排序规则大概分为Windows 排序规则和 SQL Server 排序规则.数据在安装的时候,默认不设置会默认为SQL_Latin1_General_CP1_CI_AI.数据库在创建的时候,如果不设定会使用数据默认的排序规则,此外,还可以对表中的列设定排序规则. 这里只是记录一下最近遇到这类问题时的一些注意事项. 首先SQL_Latin1_General_CP1_CI_AI对应的1252,而Chinese_PRC_CI_AS对应gbk的936.如果要正确的保存中文,则需要在建…
                         java  -- 对Map按键.按值排序 1.按键排序(sort by key) 直接上代码  ↓ public Map<String, String> sortMapByKey(Map<String, String> oriMap) { if (oriMap == null || oriMap.isEmpty()) { return null; } Map<String, String> sortedMap = new…
字符集&&排序规则 字符集是针对不同语言的字符编码的集合,比如UTF-8字符集,GBK字符集,GB2312字符集等等,不同的字符集使用不同的规则给字符进行编码排序规则则是在特定字符集的基础上特定的字符排序方式,排序规则是基于字符集的,是对字符集在排序方式维度上的一个划分.排序规则是依赖于字符集的,一种字符集可以有多种排序规则,但是一种排序规则只能基于某一种字符集的比如中文字符集,也即汉字,可以按照“拼音排序”.“按姓氏笔划排序”等等.而对于英语,就没有“拼音”和“姓氏笔画”,但是可以分为区…
Mysql中utf8_general_ci与utf8_unicode_ci有什么区别呢?在编程语言中,通常用unicode对中文字符做处理,防止出现乱码,那么在MySQL里,为什么大家都使用utf8_general_ci而不是utf8_unicode_ci呢? ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的; COLLATE是校对集的意思,可以理解为,排序规则 ; utf8_general_ci 不区分大小写,这个你在注册用…
一.一个具体的例子引发的问题 当今是国际化的时代,多种语言可能同时显示在屏幕上.比如一个人可能喜欢听华语歌.英文歌.韩文歌和日语歌,又比如他的联系人中有中国人.英国人.日本人.韩国人以及有英文名字的中国人. 在这种情况下,他的手机上需要维护一个列表,每一项可能是中文.韩文.英文和日文.在许多情况下需要对这个列表进行维护,那么如何对这些表项进行排序呢?为了解决这个问题,至少要回答以下几个问题: 中文.韩文.英文.日文的顺序是怎样的呢?那个语种在前面呢? 同一个语种内部如何排序呢?比如中文,是按照汉…