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程序将字符串进行排序与拼接的更多相关文章

  1. Java实现中文字符串的排序功能

    package test; /** * * @Title 书的信息类 * @author LR * @version 1.0 * @since 2016-04-21 */ public class B ...

  2. 如何利用java程序实现加密所需的公钥、密钥、数字证书

    本篇的主要目的在于实现pdf的数字签名问题,只是作为我学习知识的总结. 1.数字签名算法的概述 本部分主要参考于:https://blog.csdn.net/lovelichao12/article/ ...

  3. 利用java程序构造mysql测试数据

    package com.baidu.mysql;import java.sql.*; public class MysqlJdbc { /** * @param args */ public stat ...

  4. 编写Java程序,将一个int型数组拼接成字符串

    返回本章节 返回作业目录 需求说明: 将一个int数组中的元素拼接成int元素以逗号分隔字符串. 实现思路: 定义一个数组变量int[] arrs = {12,21,33,9,2}. 定义一个方法ar ...

  5. 六大利器助Java程序开发事半功倍

    实用的开发工具对于Java程序开发者来说,工作起来事半功倍.本文中小编将为大家列举包括开发环境.分析测试.代码保护等实用工具. 开发环境 Sonarqube Sonarqube是一个开源平台,是一款代 ...

  6. js与java正则表达式处理字符串问题

    在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码.合理使用正则表达式确实会为程序员省去很多字 ...

  7. Java实现经典七大经典排序算法

    利用Java语言实现七大经典排序算法:冒泡排序.选择排序.插入排序.希尔排序.堆排序.归并排序以及快速排序. 分类 类别 算法 插入排序类 插入排序.希尔排序 选择排序类 选择排序.堆排序 交换排序类 ...

  8. JAVA 基础编程练习题40 【程序 40 字符串排序】

    40 [程序 40 字符串排序] 题目:字符串排序. package cskaoyan; public class cskaoyan40 { @org.junit.Test public void a ...

  9. java中字符串的排序(1)

    按照前段时间在快速.冒泡等排序的评论中提到是否可以进行字符串的排序,由于最近有考试,时间比较紧,所以今天才实现此功能.此功能是针对一串字符川进行的实现,运行后的结果如下所示: 具体的程序相对较为简单, ...

随机推荐

  1. System.getProperty()获取系统的相关属性

    我们在编程的过程中有时候需要获取系统的相关属性,今天就让我们一起来学习学习如何获取系统的相关属性 至于System.getProperty(param)中的各个参数的概念请看下表. java.vers ...

  2. Python模块-chardet模块

    chardet模块用来获取文件的编码 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import chardet f = o ...

  3. C# 将html实体编码转换到正常字符 & #40;格式

    获取到html实体编码字符后,通过正则获取其中的html实体编码,再统一强制转换到正常字符: 代码如下: string strformat = item.value7; //将html实体编码转换到正 ...

  4. Ajax前端调后台方法

    后台对当前页面类进行注册 Ajax.Utility.RegisterTypeForAjax(typeof(Login));//Login 当前类名 在方法上面加 [Ajax.AjaxMethod(Aj ...

  5. qt数据库sql语句使用c++中的变量

    void SerialWidget::on_btnMysql_clicked() { qDebug()<<QSqlDatabase::drivers()<<endl; /*列出 ...

  6. datanode与namenode的通信原理

    在分析DataNode时, 因为DataNode上保存的是数据块, 因此DataNode主要是对数据块进行操作. **A. DataNode的主要工作流程:** 1. 客户端和DataNode的通信: ...

  7. 8、泛型程序设计与c++标准模板库2、c++标准模板库中的容器

    顺序容器类以逻辑线性排列方式存储元素,在这些容器类型中的元素在逻辑上被认为是连续的存储空间中存储的.顺序容器可用于存储线性群体. 在关联容器类中,元素的存储和检索基于关键字和元素与其他元素之间的关系, ...

  8. 阶段3-团队合作\项目-网络安全传输系统\sprint1-传输子系统设计\第3课-加密传输优化

    对之前的传输系统进行加密,使之成为加密的网络传输系统 客户端编程模型 通过以上模型对传统的TCP传输模型进行优化 首先完成初始化工作,它是要在创建socket之前完成 主要是以上四个函数的实现,那么这 ...

  9. 1. xss原理分析与剖析(1)

    0×01 前言: <xss攻击手法>一开始在互联网上资料并不多(都是现成的代码,没有从基础的开始),直到刺的<白帽子讲WEB安全>和cn4rry的<XSS跨站脚本攻击剖析 ...

  10. [CentOS7] gzip, bzip2, xz 压缩与解压缩

    声明:本文主要总结自:鸟哥的Linux私房菜-第八章.檔案與檔案系統的壓縮,打包與備份,如有侵权,请通知博主 gzip命令: 选项参数: -c :将压缩后的数据显示到屏幕上,可以用于重定向: -d : ...