利用Java程序将字符串进行排序与拼接
1、初始生成字符串的代码程序:
package com.map.test; import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map; public class Test { /**
* @param args
*/
public static List<Map<String, String>> maps = new ArrayList<Map<String,String>>();
static{ Map m1 = new HashMap<String, String>();
m1.put("total", "10");
m1.put("createTime", "2014-10-18");
maps.add(m1);
Map m2 = new HashMap<String, String>();
m2.put("total", "20");
m2.put("createTime", "2014-10-15");
maps.add(m2);
Map m3 = new HashMap<String, String>();
m3.put("total", "30");
m3.put("createTime", "2014-10-19");
maps.add(m3);
Map m4 = new HashMap<String, String>();
m4.put("total", "40");
m4.put("createTime", "2014-10-17");
maps.add(m4);
Map m5 = new HashMap<String, String>();
m5.put("total", "50");
m5.put("createTime", "2014-10-16");
maps.add(m5);
Map m6 = new HashMap<String, String>();
m6.put("total", "60");
m6.put("createTime", "2014-10-20");
maps.add(m6);
Map m7 = new HashMap<String, String>();
m7.put("total", "70");
m7.put("createTime", "2014-10-21");
maps.add(m7);
}
2、main方法调用拼接的方法
public static void main(String[] args) {
// TODO Auto-generated method stub
sortList(maps);
getTimeString();
getTotalString();
}
3、将程序进行排序
package com.map.test; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Comparator;
import java.util.Date;
import java.util.Map; public class ReportCompare implements Comparator<Map<String, String>> { @Override
public int compare(Map<String, String> o1, Map<String, String> o2) {
String o1Time = o1.get("createTime");
String o2Time = o2.get("createTime");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date o1D = sdf.parse(o1Time);
Date o2D = sdf.parse(o2Time);
if (o1D.before(o2D)) {
return -1;
}else if (o1D.equals(o2D)) {
return 0;
}else if (o1D.after(o2D)) {
return 1;
}
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return 2;
} }
4、拼接字符串
public static void getTimeString() {
StringBuffer sb = new StringBuffer("[");
for (Map<String, String> map : maps) {
sb.append("'"+map.get("createTime")+"',");
}
sb.deleteCharAt(sb.length()-1);
sb.append("]");
System.out.println(sb.toString());
}
public static void getTotalString() {
StringBuffer sb = new StringBuffer("[");
for (Map<String, String> map : maps) {
sb.append(map.get("total")+",");
}
sb.deleteCharAt(sb.length()-1);
sb.append("]");
System.out.println(sb.toString());
}
public static List<Map<String, String>> sortList(List<Map<String, String>> maps){
Collections.sort(maps, new ReportCompare());
return maps;
}
}
利用Java程序将字符串进行排序与拼接的更多相关文章
- Java实现中文字符串的排序功能
package test; /** * * @Title 书的信息类 * @author LR * @version 1.0 * @since 2016-04-21 */ public class B ...
- 如何利用java程序实现加密所需的公钥、密钥、数字证书
本篇的主要目的在于实现pdf的数字签名问题,只是作为我学习知识的总结. 1.数字签名算法的概述 本部分主要参考于:https://blog.csdn.net/lovelichao12/article/ ...
- 利用java程序构造mysql测试数据
package com.baidu.mysql;import java.sql.*; public class MysqlJdbc { /** * @param args */ public stat ...
- 编写Java程序,将一个int型数组拼接成字符串
返回本章节 返回作业目录 需求说明: 将一个int数组中的元素拼接成int元素以逗号分隔字符串. 实现思路: 定义一个数组变量int[] arrs = {12,21,33,9,2}. 定义一个方法ar ...
- 六大利器助Java程序开发事半功倍
实用的开发工具对于Java程序开发者来说,工作起来事半功倍.本文中小编将为大家列举包括开发环境.分析测试.代码保护等实用工具. 开发环境 Sonarqube Sonarqube是一个开源平台,是一款代 ...
- js与java正则表达式处理字符串问题
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码.合理使用正则表达式确实会为程序员省去很多字 ...
- Java实现经典七大经典排序算法
利用Java语言实现七大经典排序算法:冒泡排序.选择排序.插入排序.希尔排序.堆排序.归并排序以及快速排序. 分类 类别 算法 插入排序类 插入排序.希尔排序 选择排序类 选择排序.堆排序 交换排序类 ...
- JAVA 基础编程练习题40 【程序 40 字符串排序】
40 [程序 40 字符串排序] 题目:字符串排序. package cskaoyan; public class cskaoyan40 { @org.junit.Test public void a ...
- java中字符串的排序(1)
按照前段时间在快速.冒泡等排序的评论中提到是否可以进行字符串的排序,由于最近有考试,时间比较紧,所以今天才实现此功能.此功能是针对一串字符川进行的实现,运行后的结果如下所示: 具体的程序相对较为简单, ...
随机推荐
- 不卸载ceph重新获取一个干净的集群环境
不卸载ceph重新获取一个干净的集群环境 标签(空格分隔): ceph ceph环境搭建 运维 部署了一个ceph集群环境,由于种种原因需要回到最开始完全clean的状态,而又不想卸载ceph客户端或 ...
- JS计算文件的md5
首先需要引入js文件(二选一): https://raw.github.com/satazor/SparkMD5/master/spark-md5.js https://github.com/sata ...
- Windows 2008 远程登陆时提示"要登录到此远程计算机,您必须被授予允许通过终端登录登录的权限"
ECS Win2008 远程时提示"要登录到此远程计算机,您必须被授予允许通过终端登录登录的权限"的解决方法 问题描述 ECS Windows 2008 远程登陆时提示&quo ...
- 免密码ssh2登录
以下针对的是ssh2,而不是ssh.配置分两部分:一是对登录机的配置,二是对被登录机的配置,其中登录机为客户端,被登录机为服务端,也就是解决客户端到服务端的无密码登录问题.下述涉及到的命令,可以直接拷 ...
- javascript 操作符小结
简单总结一下JavaScript的几个操作符: var. in. delete. typeof. new. instanceof.void var 定义变量要使用var操作符, 使用var操作符定义的 ...
- [转]关于CLOB存储Base64图片编码,直接在前台显示解决方案
转至:http://ouapi.com/tool/imgtob 两种方案: Base64在CSS中的使用 .yanshishuxing{ background-image: url("dat ...
- jQuery :odd 选择
<!DOCTYPE html><html><head><meta charset="utf-8"><script src=&q ...
- Page_Load事件与IsPostBack属性
下面是一个登陆的界面: 我们的需求是: 第一次进入登陆界面时,用户名和密码应该为空,所以我们应该在Page_Load中将存放用户名和密码的两个文本框的内容清空.然后当我们单击登陆按钮时, ...
- jquery 操作表格实例
案例1:隔行变色,滑动,点击变色以(选中取消效果)(addClass(),removeClass(),toggleClass()) Html: <h4>1.隔行变行</h4> ...
- PM2使用文档
简介 PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控.自动重启.负载均衡等,而且使用非常简单. 下面就对PM2进行入门性的介绍,基本涵盖了PM2的常用的功能和 ...