`
BestUpon
  • 浏览: 290025 次
  • 性别: Icon_minigender_1
  • 来自: 兰州
社区版块
存档分类
最新评论

Java中将List分组到Map中算法(可用于android联系人拼音分组)

 
阅读更多

 

public class Data {

	private static String temps = "新华网北京12月5日电(记者 赖臻)记者5日从北京市总工会获悉,外地来京建筑施工企业的工会负责人需要考取劳动争议调解员资格证书,此举旨在从源头上帮助农民工树立正确的维权导向,引导他们通过正确途径解决问题。据悉,首期考试培训班已经开课,来自四川、浙江等地建筑施工企业的500余名工会负责人参加了学习。培训班将结合典型劳动争议调解案例,围绕《劳动争议调解仲裁法》《劳动合同法》中的重点内容,以及在实施中可能遇到的热点、难点问题进行讲解。北京市总工会相关负责人表示,希望基层的工会负责人能够成为劳动争议事件的第一知情人、第一报告人和第一督促解决人。今后所在企业一旦出现劳动争议,调解员需最大限度地保护企业与职工的合法权益,维护社会稳定和谐。";

	private static Map<String, List<String>> datas = new HashMap<String, List<String>>();

	private static final char[] alphatable = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
			'#' };

	public static List<String> getData(List<String> listTag) {

		for (Character c : alphatable) {
			datas.put("" + c, new ArrayList<String>());
		}

		List<String> data = new ArrayList<String>();
		for (int i = 0; i < temps.length();) {
			data.add(GB2Acronym.getAcronymFrist(temps.charAt(i) + "") + (i++));
		}
		Collections.sort(data);

		processData(data);
		List<String> results = new ArrayList<String>();

		for (String key : datas.keySet()) {
			if (datas.get(key).size() != 0) {
				results.add(key);
				listTag.add(key);
				results.addAll(datas.get(key));
			}
		}

		return results;
	}

	private static void processData(List<String> data) {
		for (String str : data) {
			String key = str.charAt(0) + "";
			if (datas.containsKey(key)) {
				datas.get(key).add(str);
			}
		}
	}

}

 实现的功能:将List排序之后,在List中按照分组增加分组标签,大多用于联系人按照拼音分组

分享到:
评论
1 楼 zhuqiang5138 2011-12-20  
GB2Acronym 这个是哪边来的啊

相关推荐

    Java数据结构和算法中文第二版

    书中将详细讲解每种算法的原理、实现步骤、复杂度分析,并通过实例演示如何在Java中实现。 3. **对象和类**:在Java中,数据结构通常通过对象和类来实现。书中的例子可能会涉及面向对象的设计原则,如封装、继承和...

    Collections Framework中的算法(之一)――综述

    `java.util.Collections` 类则主要针对集合(如List、Set、Map等)提供了丰富的算法支持,具体包括: 1. **排序** `Collections.sort(List&lt;T&gt; list)` 用于对List进行排序,支持自然排序及通过比较器实现的定制...

    数据结构与算法分析_Java语言描述 第二版

    2. 异常处理:Java中的异常处理机制在实现复杂算法时尤为重要,能够帮助捕获和处理程序运行时可能出现的问题。 3. 集合框架:Java集合框架是实现数据结构的基础,包括List、Set、Map接口及其实现类,如ArrayList、...

    Data Structures And Algorithms in Java.pdf

    此外,还可能涉及到Java集合框架,如List、Set、Map接口及其实现类。 通过阅读《Data Structures And Algorithms in Java》,开发者可以深入理解数据结构和算法的原理,并学会如何在实际项目中应用它们,从而提升...

    《数据结构算法与应用》中文教材

    在本书中,读者将学习如何利用C++的特性来实现高效的数据结构和算法,如使用STL容器(如vector、list、set、map等)和算法(如sort、find、unique等)。 通过阅读这本教材,学习者不仅可以掌握数据结构和算法的基本...

    Java数据编程指南.pdf

    书中可能会涉及这些基础知识及其在Java中的实现。 10. **数据安全与加密**:Java提供了许多安全类库,用于数据加密、解密、数字签名等。这部分内容会介绍如何保护数据的安全性。 11. **大数据处理**:Java在Hadoop...

    数据结构与算法分析C++描述

    4. STL(标准模板库):包括容器(如vector、list、set、map)、迭代器、算法和函数对象,提供强大的数据结构和算法支持。 通过阅读《数据结构与算法分析C++描述》,读者不仅能掌握数据结构和算法的基本概念,还能...

    Java经典实例.第三版(高清PDF+配套代码)

    此外,本书还将覆盖Java集合框架,这是Java库中一个极其重要的部分,包括List、Set、Queue和Map等接口,以及ArrayList、LinkedList、HashSet、HashMap等实现类。通过实例,你可以学习如何有效地存储和管理数据,以及...

    字符串反解析成树结构

    在Java中,递归函数可能会如下所示: ```java public TreeNode buildTree(List&lt;Map, String&gt;&gt; data) { TreeNode root = null; Map, TreeNode&gt; nodesMap = new HashMap(); List&lt;TreeNode&gt; unmountedNodes = new ...

    2018年新版Java程序员面试宝典

    数据库知识是软件开发中不可或缺的部分,面试宝典会涵盖SQL基础、事务处理、索引优化、存储过程等内容,特别是对Java常用的JDBC操作也会有详细的示例。 九、网络编程 网络编程基础,如TCP/IP协议、HTTP协议,以及...

    新高质量的Java程序设计

    文章中提到了`Collection Framework`,这是Java中处理数据集合的核心API之一,包括各种接口(如`List`、`Set`、`Map`等)以及其实现类(如`ArrayList`、`HashSet`、`HashMap`等)。理解和掌握集合框架对于高效开发...

    数据结构与算法C版本

    2. **标准模板库(STL)**:书中可能会介绍如何使用C++的标准模板库(STL)中的容器(如vector、list、map等)和算法(如sort、find等),来简化数据结构与算法的设计与实现。 3. **内存管理**:C++允许程序员直接...

    Java并发编程(学习笔记).xmind

    用于在遍历操作为主要操作的情况下替代同步的List Queue ConcurrentLinkedQueue *BlockingQueue 提供了可阻塞的put和take方法 生产者-消费者模式 中断的处理策略 传递...

    三三得玖公司java笔试题

    在Java中,`PreparedStatement`和`Statement`都是用于执行SQL语句的接口,但它们之间存在显著差异: - **PreparedStatement**:允许使用参数化查询,可以有效防止SQL注入攻击;支持预编译,提高执行效率。 - **...

    C++ STL程序员开发指南 彭木根 王淑凌编著

    STL是C++编程中不可或缺的一部分,它提供了高效、灵活的数据结构和算法,极大地提高了程序开发的效率。这本书详细介绍了STL的各个方面,旨在帮助程序员更好地理解和运用这一强大的工具。 STL全称为Standard ...

    SimpleJava.pdf

    - **Properties类**:Java中用于处理配置文件的标准类。 - **读写操作**:加载Properties文件到内存中,然后进行增删改查操作。 - **配置管理**:广泛应用于存储应用程序的配置信息。 #### 29. 监视器:Java同步的...

    2021-2022计算机二级等级考试试题及答案No.13626.docx

    在Java中,`Thread.sleep(long millis)`方法会抛出`InterruptedException`异常,用于中断线程的睡眠状态。 ### 11. 运行表单的命令 在Visual FoxPro环境中运行表单的正确命令是`A`,“DO FORM”。这是启动或加载...

    Effective STL

    在STL中,函数对象常用于算法的标准操作,例如比较和转换。 5. **适配器(Adapters)**:适配器允许开发者将现有的容器、迭代器或函数对象改变为新的形式,以满足特定的需求。例如,stack和queue是基于deque或list...

Global site tag (gtag.js) - Google Analytics