1:排序类

package com.tixa.bad.customer.util;

import java.util.ArrayList;

import java.util.Collections;

import java.util.Comparator;

import com.tixa.bad.customer.data.AdstatGraphArea;

/**

* 对地区数据进行排序

*

* @StatAreaSort

*

* @author

*

* TODO

*/

public class StatAreaSort

{

/**

* 点击排序规则,倒序

*/

private static Comparator orderClick = new Comparator()

{

public int compare(Object o1, Object o2)

{

AdstatGraphArea b1 = (AdstatGraphArea) o1;

AdstatGraphArea b2 = (AdstatGraphArea) o2;

return (b2.getClickcount() - b1.getClickcount());

}

};

/**

* ip排序规则,倒序

*/

private static Comparator orderIP = new Comparator()

{

public int compare(Object o1, Object o2)

{

AdstatGraphArea b1 = (AdstatGraphArea) o1;

AdstatGraphArea b2 = (AdstatGraphArea) o2;

return (b2.getIpcount() - b1.getIpcount());

}

};

/**

* 根据点击量进行排序

*

* @param list

*/

public static void getSortClick(ArrayList list)

{

Collections.sort(list, orderClick);

// Collections.reverse(list);

}

/**

* 根据ip量进行排序

*

* @param list

*/

public static void getSortIp(ArrayList list)

{

Collections.sort(list, orderIP);

// Collections.reverse(list);

}

}

2:对排序进行测试

package com.tixa.bad.customer.util;

import java.util.ArrayList;

import junit.framework.TestCase;

import com.tixa.bad.customer.data.AdstatGraphArea;

public class StatAreaSortTest extends TestCase

{

protected void setUp() throws Exception

{

super.setUp();

}

protected void tearDown() throws Exception

{

super.tearDown();

}

/*

* Test method for 'com.tixa.bad.customer.util.StatAreaSort.getSortClick(ArrayList)'

*/

public void testGetSortClick()

{

ArrayList list = new ArrayList();

AdstatGraphArea graAre = new AdstatGraphArea();

graAre.setAdid(1);

graAre.setClickcount(786);

graAre.setIpcount(43453);

list.add(graAre);

AdstatGraphArea graAre1 = new AdstatGraphArea();

graAre1.setAdid(2);

graAre1.setClickcount(987876);

graAre1.setIpcount(545);

list.add(graAre1);

AdstatGraphArea graAre2 = new AdstatGraphArea();

graAre2.setAdid(3);

graAre2.setClickcount(877887);

graAre2.setIpcount(4534534);

list.add(graAre2);

AdstatGraphArea graAre3 = new AdstatGraphArea();

graAre3.setAdid(4);

graAre3.setClickcount(97998);

graAre3.setIpcount(34534);

list.add(graAre3);

AdstatGraphArea graAre4 = new AdstatGraphArea();

graAre4.setAdid(5);

graAre4.setClickcount(500);

graAre4.setIpcount(2000);

list.add(graAre4);

System.out.print("sore before ");

for(int i = 0;i

{

AdstatGraphArea a = (AdstatGraphArea)list.get(i);

System.out.println(a.getAdid());

}

StatAreaSort.getSortClick(list);

System.out.print("sore after");

for(int i = 0;i

{

AdstatGraphArea a = (AdstatGraphArea)list.get(i);

System.out.println(a.getAdid());

}

System.out.println("----------------------");

StatAreaSort.getSortIp(list);

for(int i = 0;i

{

AdstatGraphArea a = (AdstatGraphArea)list.get(i);

System.out.println(a.getAdid());

}

}

/*

* Test method for 'com.tixa.bad.customer.util.StatAreaSort.getSortIp(ArrayList)'

*/

public void testGetSortIp()

{

}

}

posted on 2006-06-06 17:15 梦源 阅读(392) 评论(0)  编辑  收藏

java中对象排序_java中 对象的排序相关推荐

  1. set列表对象去重_java中List对象列表去重或取出以及排序

    面试碰到几次list的去重和排序.下面介绍一种做法: 1. list去重 1.1 实体类Student List容量10k以上,要求去重复.这里Student的重复标准是属性相同,因此需要重写equa ...

  2. java中将json字符串_Java中JSON字符串与java对象的互换实例详解

    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...

  3. java流的序列化_Java中的对象流和序列化介绍

    最近,在讲流的使用,其中对象流的作用其实就是将自定义类的对象与流之间相互转换的流. 看起来还是挺简单的,那么看下面的例子: public class Student{ private int id; ...

  4. java对象深克隆_JAVA中对象的克隆及深拷贝和浅拷贝

    使用场景: 在日常的编程过程 中,经常会遇到,有一个对象OA,在某一时间点OA中已经包含了一些有效值 ,此时可能会需一个和OA完全相对的新对象OB,并且要在后面的操作中对OB的任何改动都不会影响到OA ...

  5. java中对象类型转换_Java中的对象的类型转换介绍(附代码)

    本篇文章给大家带来的内容是关于Java中的对象的类型转换介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 向上转型:子类对象转为父类,父类可以是接口.公式:Father ...

  6. java 取对象的类_Java中通过Class类获取Class对象的方法详解

    前言 本文主要给大家介绍的是关于Java通过Class类获取Class对象的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 阅读API的Class类得知,Class 没有公共 ...

  7. java string 对象地址_Java中String对象的存储位置(学习笔记)

    packagetest.string.equal;public classMain {/*** 创建了三个对象,"helloworld对象创建在常量池中",每次new String ...

  8. java 数组对象长度_Java中的数组长度:关于Java中数组长度的所有信息

    Java中的数组可以包含多个元素,这取决于对象是如何创建的.为了让用户执行不同的操作,必须知道数组的长度.这篇关于"Java中的数组长度"的文章旨在让我们熟悉用于获取数组长度的操 ...

  9. java 链接重排序_JAVA中JVM的重排序详细介绍

    重排序通常是编译器或运行时环境为了优化程序性能而采取的对指令进行重新排序执行的一种手段.重排序分为两类:编译期重排序和运行期重排序,分别对应编译时和运行时环境 在并发程序中,程序员会特别关注不同进程或 ...

  10. java合并排序_Java中的合并排序算法

    合并排序算法是一种分而治之的算法.在分而治之的范式中,一个问题被分解成较小的问题,其中每个小问题仍然保留着大问题的所有属性--大小除外.为了解决原始问题,每个部分都是单独解决的,然后这些部分又合并在一 ...

最新文章

  1. 餐巾计划问题 线性规划与网络流24题之10 费用流
  2. 若依微服务版手把手教你本地搭建环境并运行前后端项目
  3. MySQL /“N叉树”的N值在MySQL中是可以被人工调整吗
  4. 让电脑开机时直接登录
  5. C++中this指针的用法详解
  6. 集合对象-“块数据”操作--其实是同一对象引用
  7. java equals 判断空_Java 判断字符串是否为空的三种方法与性能分析
  8. Java并发编程之堵塞队列介绍以及SkipList(跳表)
  9. 编译安装MongoDB以及安装PHP的mongodb扩展
  10. ubuntu16.04安装jekyll 3.3.1
  11. sql tempdb清理_SQL Server 2019中的内存优化的TempDB元数据
  12. 服创大赛第二次讨论_2019-01-19
  13. 使用盒子模型仿照优酷的页面片段
  14. ros开发增加clion常用模板及初始化配置(一)
  15. Android:Toolbar的图标尺寸问题
  16. 让你的 Linux 远离黑客(二):另外三个建议
  17. 牛逼!它比传统数据库快 100-1000,真不相信?
  18. 计算机桌面保护程序,屏幕保护程序软件
  19. 免费会员管理管理系统
  20. 工程、技术与工程师三者之间的相互关系

热门文章

  1. Win7下MATLAB 7.0下载地址+详细安装+运行错误解决
  2. Siebel Admin: How to find the Component that associated with Application
  3. 阶乘之和计算_浅谈积分计算的技巧
  4. swiper高度自适应_微信小程序之swiper轮播图片高度自适应
  5. gcn 图卷积神经网络_GCN图卷积网络入门详解
  6. 清新淡雅水彩手绘花卉插画素材,psd分层好用!
  7. 彩色烟雾一直是许多摄影师和摄影爱好者的首选武器
  8. 你在为疯狂圣诞节海报做准备了么?
  9. oracle jvm禁用,java-如何减少Sun / Oracle JVM内部开销?
  10. qt designer 自定义插件找不到指定的模块_go与qt的新酒老瓶