- 浏览: 1263895 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (461)
- 心得体会 (166)
- Hibernate (9)
- Spring (12)
- Struts1 (3)
- Ajax (4)
- Java (54)
- 其他技术 (21)
- 数据库 (29)
- EXT (0)
- Struts2 (7)
- Xml (3)
- HTML (5)
- JavaScript (12)
- 面试相关 (3)
- BLOG (11)
- 计算机 (11)
- PMP (0)
- OGNL (1)
- LINUX (79)
- AIX (1)
- Ubuntu (14)
- Android (1)
- hadoop (3)
- LINUX debian (3)
- 心得体会 eclipse (2)
- JSTL (1)
- 心得体会 hadoop cdh3u5 (2)
- maven (5)
- Hive (1)
- 心得体会 工具使用 (3)
- spring data jpa Query By Example(QBE) (1)
- nginx (2)
- Apache (1)
- mysql (6)
- LINUX mysql (2)
- freemaker (1)
- 心得体会 FastDFS Nginx 断点续传 (1)
- LINUX FastDFS Nginx 断点续传 (1)
- 心得体会 Mybatis (2)
- 心得体会 mysql (4)
- php (1)
- logback 简介 (5)
- EL (1)
- Tomcat (2)
- win7 (1)
- LINUX maven (1)
- scrumworks (1)
- linux nginx (6)
- svn linux (1)
- mac (3)
- mac git (1)
- git (1)
- nexus (2)
- golang (1)
- LINUX Redis (1)
- mac oracle (1)
最新评论
-
a785975139:
有用
MySQL Error :SHOW PROFILES -
yijiulove:
弄了半天,参照你的方法解决了.特来感谢,知道可能是先加载,但是 ...
Spring和Mybatis整合时无法读取properties的处理方案 -
chenjinqi1987:
Missing com.sun.jdmk:jmxtools:jar:1.2.1 -
leifeng2:
请问怎么使用,运行之后d盘符没有生产音频文件呢?
java录音程序 -
sundful:
chenghong726 写道你好,我也遇到你这样的问题,按照 ...
Spring和Mybatis整合时无法读取properties的处理方案
java.util.TreeMap 放入其中的value,自动按key进行排序, 默认的排序规则按ascii码排序,如果是key是英文和数字不会有问题,如果中文
则会出现问题,需要自己写排序规则。
比较器需要实现java.text.Collator类,例如:
package cn.tjopen.mediaman.util; import java.text.CollationKey; import java.text.Collator; public class CollatorComparator extends Collator { private Collator collator = Collator.getInstance(); private int sort=1; @Override public int compare(String arg0, String arg1) { CollationKey key1 = collator.getCollationKey(arg0); CollationKey key2 = collator.getCollationKey(arg1); return sort*key1.compareTo(key2); } /** * 设定排序的方向 * @param i 排序方向(正数:正序;负数:倒序) */ public void setSort(int i){ if(i>0){ sort=1; }else if(i<0){ sort=-1; } } @Override public CollationKey getCollationKey(String arg0) { // TODO Auto-generated method stub return null; } @Override public int hashCode() { // TODO Auto-generated method stub return 0; } }
比较器的使用:
int sort = 1;//>0正序<0倒叙 CollatorComparator comparator = new CollatorComparator(); comparator.setSort(sort); Map map = new TreeMap(comparator);
然后在把要排序的字段作为key,相应的信息作为对应的value,即可实现排序
注意:key值不能重复,如果排序字段有重复,则需要进行处理。
例如:方法一:在向map中存放数据时,先判断要放的key是否已存在,如果存在在当前值后面加一区分标记
方法二:如果信息中有不可能重复的字段,在排序字段后面加上这个不重复的字段值,把这个组合当做key
发表评论
-
springboot中spring.profiles.include的妙用
2019-09-30 10:03 2043我们有这样的一个spring ... -
java8--List转为Map、分组、过滤、求和等操作
2018-09-14 16:07 2858利用java8新特性,可以用简洁高效的代码来实现一些数据 ... -
intelliJ IDEA 文件修改之后的蓝色
2018-04-12 10:37 2480intelliJ IDEA链接svn之后,当文件发生修 ... -
Restful与webService区别
2018-02-13 09:59 812有好多人问我们在设计底层服务的时候到底是应该选 ... -
InputStream为什么不能被重复读取?
2017-07-17 14:36 974首先,熟悉Java的人可能都知道,Java中的Inputst ... -
CentOS下SWAP分区建立及释放内存
2016-02-18 14:20 3707方法一: 一、查看系统当前的分区情况:>free - ... -
CentOS下挂载硬盘(fdisk,mkfs.ext4,mount)
2016-02-18 13:55 7152centos挂载硬盘 挂载硬盘步骤: 1. 先分区 ... -
七个对我最重要的职业建议
2015-12-17 13:19 603Nicholas C. Zakas 是全世 ... -
Centos安装Vsftpd
2015-11-03 19:10 912安装部分摘自开源中国,最后红色部分解决无法登陆(cannot ... -
在logback中配置mybatis显示sql
2015-07-08 11:56 1229第一种方式、直接在logback.xml配置文件中添加: ... -
git 删除远程分支
2015-06-25 14:58 1064一不小心把本地的临时分支push到server上去了,想要删除 ... -
httpclient 上传、下载文件
2015-04-20 18:53 1126/** * 上传文件 * @throws Pars ... -
Java 7, Jenkins, Ubuntu 12.10 64bit issues
2015-01-20 16:44 915While installing Jenkins 1.486 ... -
在CentOS中安装中文字体
2014-08-08 14:25 1896以linux下安装宋体,黑体为例,介绍字体安装方法:第一步、 ... -
JCaptcha 验证码添加干扰线,显示中文验证码
2014-08-08 13:30 8685import java.awt.Color; import ... -
nginx记录post参数和自定义头信息
2014-08-01 19:10 21521.版本:nginx/1.4.4 记录post参数: ... -
理解 JMeter 聚合报告(Aggregate Report)
2014-06-27 17:01 9696Aggregate Report 是 JMeter 常用的一 ... -
系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式
2014-06-26 14:34 2401一.系统吞度量要素: ... -
web 性能测试中的几个关键指标:并发用户数,QPS,用户平均请求等待时间
2014-06-26 13:40 1088关于并发用户数和QPS,自己一直被这两个概念纠结,阅读了一下相 ... -
QPS、PV和需要部署机器数量计算公式(转)
2014-06-26 11:33 1244术语说明:QPS = req/sec = 请求数/秒 【Q ...
相关推荐
在Java编程语言中,`TreeMap`是一种基于红黑树数据结构实现的键值对容器,与`HashMap`不同,`TreeMap`自动按照键的自然顺序或者自定义的比较器进行排序。当我们需要存储的数据有特定的排序需求时,`TreeMap`便成为一...
第一种方案是利用TreeMap进行排序。TreeMap是一种基于红黑树的NavigableMap实现,它可以在插入键值对时,自动按键的自然顺序或指定的Comparator进行排序。使用TreeMap时,通常会先将所有的键值对取出,然后逐一放入...
1. **排序**:TreeMap会根据键的自然顺序或者在创建时指定的比较器进行排序。如果键是可比较的对象(实现了Comparable接口),那么它们将按照自然顺序排序。否则,你需要提供一个Comparator对象来定义排序规则。 2....
在“java treemap 学生信息”这个场景中,`TreeMap` 被用来存储和管理学生信息,以高效地进行总分统计、平均分计算、最大分和最小分的查找。 首先,我们来理解一下如何使用`TreeMap`来存储学生信息。每个学生的信息...
1. **排序**:默认情况下,`TreeMap`按照键的自然顺序进行排序,即键必须实现`Comparable`接口。如果键是自定义对象,需要重写`compareTo()`方法来定义排序规则。另外,可以通过传入自定义的`Comparator`给构造函数...
Map接口不直接支持排序,但是Java提供了一些实现了SortedMap接口的类,如TreeMap,它会按照键(Key)的自然顺序或者自定义比较器(Comparator)进行排序。但是,对于已经创建的HashMap或其他非排序Map,我们不能直接...
Java中的TreeMap是一个基于红黑树的NavigableMap实现,它能够在键值对插入时按照键的自然顺序或自定义的Comparator进行排序。TreeMap提供了有序的Map实现,因此在需要按照插入顺序或其他特定顺序遍历键值对时非常...
1. **有序性**:`Treemap`中的元素按照键的自然顺序或者比较器提供的顺序进行排序。在这个学生信息管理程序中,可能使用学号作为键,因为学号通常具有自然排序。 2. **高效查询**:由于`Treemap`是红黑树的实现,其...
测试用例应覆盖各种情况,如插入已存在的键、插入新的键、删除不存在的键以及在树中进行多轮插入和删除后进行查找等。 在PHP中实现红黑树是一项挑战,因为PHP语言本身并不提供内置的原生数据结构来支持这种复杂的...
Java编程语言中的集合框架是开发过程中不可或缺的一部分,而TreeMap作为集合框架中的一员,它是一种有序的Key-Value存储结构,适用于需要...通过实践和学习,你将能够更好地利用TreeMap来优化你的代码和提升程序效率。
在Java编程语言中,`HashMap` 是一个常用的...在这个例子中,我们利用 `TreeMap` 的排序功能,结合自定义的 `Car` 类,实现了按照速度和型号双重排序的功能。通过这种方式,我们可以更方便地管理和显示有序的数据集。
自然语言理解 关于词频统计的代码 利用treemap来完成
在本主题中,“利用树计算简单表达式 排序”主要涉及到如何将数学表达式转化为树形结构来方便计算,并结合排序算法进行高效处理。 首先,让我们详细探讨树在计算表达式中的应用。树通常被用来表示算术或逻辑表达式...
- `TreeMap`是一个实现了`SortedMap`接口的类,这意味着它能够自动对键进行排序,要么根据自然顺序,要么根据提供的`Comparator`。 - 键必须实现`Comparable`接口,以便进行比较和排序。 2. **插入与删除操作** ...
由于`TreeMap`内部会根据键的自然顺序或比较器进行排序,所以键的类型必须实现`Comparable`接口,或者在创建`TreeMap`时传入自定义的`Comparator`。 总结一下,Java泛型是编写类型安全、高效代码的关键工具。通过...
2. **使用TreeMap或Collections.sort()**:可以使用`TreeMap`或者`Collections.sort()`方法来对键进行排序。这里展示了两种不同的实现方式: - 使用`TreeMap`:创建一个`TreeMap`对象并传入`ByValueComparator`作为...
1. **TreeMap** 是一个基于红黑树实现的Map,它会自动根据键的自然顺序或自定义比较器进行排序。例如: ```java import java.util.TreeMap; TreeMap, Integer> treeMap = new TreeMap(); treeMap.put("apple", 1);...
通过这种方式,TreeSet可以利用TreeMap的排序和查找能力,同时提供Set接口规定的操作。 总结: 红黑树是TreeMap和TreeSet高效运作的基础,它通过自我平衡的特性确保了数据结构的高效性。在Java的集合框架中,...
在这个场景中,我们关注的是如何利用比较器(Comparator)来实现联系人列表的动态排序,既可以按姓名,也可以按电话号码进行排列。 首先,联系人数据通常存储在List或其他类型的集合中,每个联系人对象包含姓名和...
红黑树是一种自平衡的排序二叉树,用于实现 TreeMap 和 TreeSet,以保证高效的查找、插入和删除操作。其特点如下: 1. **性质**: - 每个节点要么是红色,要么是黑色。 - 根节点总是黑色。 - 每个叶子节点(NIL ...