集合的排序 一个集合中存储无序元素 使其有序化(字典顺序) 不去重

原创 2016年08月30日 22:03:38
package comheima.test;

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.TreeSet;

/**
 * 一个集合中存储无序元素 使其有序化(字典顺序) 不去重 并打印
 * 
 * @author fenuang
 *
 * 分析:无序--->list集合
 */
public class demo {
	public static void main(String[] args) {
		ArrayList<String> list = new ArrayList<>();

		list.add("aaaa");
		list.add("aaaa");
		list.add("abbb");
		list.add("aaaa");
		list.add("aaaa");
		list.add("accc");
		list.add("bbbb");
		sort(list);
	}

	// 定义方法排序并保留重复
	// 使用比较器
	// 把list集合的数据添加到treeSet
	// 清空list
	// 吧新数据导入list
	// 遍历打印
	public static void sort(List<String> list) {
		// 传入list的好处是可以传子类arraylist和linkedlist
		// TODO Auto-generated method stub

		// 匿名内部类
		TreeSet<String> ts = new TreeSet<>(new Comparator<String>() {

			@Override
			public int compare(String o1, String o2) {
				// TODO Auto-generated method stub
				int num = o1.compareTo(o2);
				return num == 0 ? 1 : num;
			}
		});

		// 把数据加入比较器
		ts.addAll(list);

		// 清空原集合
		list.clear();

		list.addAll(ts);
		System.out.println(list);
	}

	// 吧list中的数据加到比较器中

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

在一个集合中存储了无序并且重复的字符串,定义一个方法,让其有序(字典顺序),而且还不能去除重复

package com.prictise; import java.util.ArrayList; import java.util.Comparator; import java.util...
  • A_JavaEE
  • A_JavaEE
  • 2016年11月07日 21:38
  • 728

Java中比较器小结

比较器指的是集合存储的元素的特性,如果元素是可比较的则可以进行相应的排序,否则不行。但是在Java中有Comparable接口和Comparator接口,具体有什么区别呢? 对于Comparable接...
  • u012050154
  • u012050154
  • 2016年07月28日 12:02
  • 1978

Java中的排序比较方式:自然排序和比较器排序

这里所说到的Java中的排序并不是指插入排序、希尔排序、归并排序等具体的排序算法。而是指执行这些排序算法时,比较两个对象“大小”的比较操作。我们很容易理解整型的 i>j 这样的比较方式,但当我们对多个...
  • xh16319
  • xh16319
  • 2012年09月29日 00:53
  • 1222

对List集合中的元素进行排序

Collections对List集合中的数据进行排序 有时候需要对集合中的元素按照一定的规则进行排序,这就需要用到 Java中提供的对集合进行操作的工具类Collections,其中的so...
  • veryisjava
  • veryisjava
  • 2016年06月14日 22:08
  • 108067

List集合中的对象根据属性排序

集合类List存放的数据,默认是按照放入时的顺序存放的,比如依次放入A、B、C,则取得时候,则也是A、B、C的顺序,实际场景中,有时我们需要根据自定义的规则对List中的元素进行排序,该如何实现呢?看...
  • lifuxiangcaohui
  • lifuxiangcaohui
  • 2014年11月27日 11:11
  • 78855

集合----顺序存储的实现

一 、集合的定义    集合是由任意类型互不相同的数据元素组成的,它们之间没有任何逻辑关系。每一个元素都是相对独立的。在Java中,Object类是所有对象的根类,可以代表集合中任意一种数据类型。...
  • sd_lucky
  • sd_lucky
  • 2016年08月03日 20:37
  • 619

Java集合的有序、无序、排序性质讨论

首先搞清楚有序、无序及排序性质的差别。 集合的有序、无序是指插入元素时,保持插入的顺序性,也就是先插入的元素优先放入集合的前面部分。 而排序是指插入元素后,集合中的元素是否自动排序。(例如升序排序...
  • zjwcdd
  • zjwcdd
  • 2016年05月05日 12:49
  • 5066

集合的排序 一个集合中存储无序元素 使其有序化(字典顺序) 不去重

package comheima.test; import java.util.ArrayList; import java.util.Comparator; import java.util.Li...
  • qq_34533413
  • qq_34533413
  • 2016年08月30日 22:03
  • 625

Java对List集合的排序

由于其功能性和灵活性,ArrayList是 Java 集合框架中使用最为普遍的集合类之一。ArrayList 是一种 List 实现,它的内部用一个动态数组来存储元素,因此 ArrayList 能...
  • liaodehong
  • liaodehong
  • 2016年01月24日 17:07
  • 10884

redis使用教程原理-第五章:数据类型之集合无序不重复

集合:不重复无序 41:sadd 键名称 值...  返回影响的行数 42:smembers 键名称 返回集合中所有的元素 43:sismember 键名称 数据 :查看一个元素是否在集合中存在返回1...
  • zzzqqqzq
  • zzzqqqzq
  • 2016年12月15日 15:59
  • 1118
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:集合的排序 一个集合中存储无序元素 使其有序化(字典顺序) 不去重
举报原因:
原因补充:

(最多只允许输入30个字)