- 浏览: 59773 次
- 性别:
- 来自: 南京
文章分类
最新评论
java 中对象比较大小
java 中对象比较大小有两种方法
1:实现Comparable 接口 的 public int compareTo(T o) 方法;
2:实现Comparator 接口 的 int compare(T o1, T o2)方法;
代码如下:
java 中对象比较大小有两种方法
1:实现Comparable 接口 的 public int compareTo(T o) 方法;
2:实现Comparator 接口 的 int compare(T o1, T o2)方法;
代码如下:
import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.Set; import java.util.TreeSet; public class Test { public static void main(String[] args) { List list =new ArrayList(); list.add(new Dept("2","研发部",23)); list.add(new Dept("2","总公司",575)); list.add(new Dept("2","总公司",565)); // Collections.sort(list); Collections.sort(list, new Comparator(){ public int compare(Object arg0, Object arg1) { // TODO Auto-generated method stub Dept dept1=(Dept)arg0; Dept dept2=(Dept)arg1; return dept1.compareTo(dept2); } }); for (int i=0;i<list.size();i++){ System.out.println((Dept)list.get(i)); } Dept dept1=new Dept("2","研发部",23); Dept dept2=new Dept("2","kk",44); Set set=new TreeSet(new Comparator(){ public int compare(Object arg0, Object arg1) { // TODO Auto-generated method stub return 0; } }); set.add(dept1); set.add(dept2); } } class Dept implements Comparable{ private String id; private String name; private long num; public Dept(String id,String name,long num){ this.id=id; this.name=name; this.num=num; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public long getNum() { return num; } public void setNum(long num) { this.num = num; } public int compareTo(Object arg0) { Dept dept=(Dept) arg0; int i=0; i=this.id.compareTo(dept.id); if(i!=0){//部门id不相等 return i; }else{//部门id相等 i=this.name.compareTo(dept.name); if(i!=0){//部门名称不相等 return i; }else{//部门名称不相等 if(this.num>dept.num)return 1; else if(this.num<dept.num)return -1; else return 0; } } } public String toString() { // TODO Auto-generated method stub return this.id+"-->"+this.name+"-->"+this.num; } }
发表评论
-
html5 跨域访问
2017-08-18 13:10 368@Configuration public class ... -
javat进程 cpu100%,解决方法
2017-07-24 16:35 382Java进程cpu100%,解决方法如下: 1.执行top ... -
eclipse 汉化
2017-06-20 12:48 367Installing the language packs O ... -
判断移动设备环境
2016-06-21 09:50 405/** * 客户端判断工具 * */ ... -
Java 文件锁
2016-06-17 09:50 351FileChannel channel FileLock ... -
并发同步列子
2016-06-16 09:30 337import java.util.concurrent.Cou ... -
java.util.concurrent 用户指南
2016-06-15 14:09 328java.util.concurrent 用户指南 -
java 反射工具
2016-06-12 11:07 465java 反射工具 package com.util; ... -
linux java 安装
2016-04-23 10:19 358下载jdk-7u79-linux-x64.tar.gz文件,解 ... -
对象序列化和反序列化
2016-04-14 20:28 408当一个对象的实例变量 ... -
java 垃圾回收机制
2016-03-02 11:08 299http://www.cnblogs.com/dartagn ... -
ngrok_windows.rar 映射外网
2016-02-29 16:50 460ngrok_windows.rar 映射外网 -
性能优化技巧
2015-09-09 08:48 5841. 尽量使用final修饰符。 带有final修饰符的类是 ... -
java 反编译工具
2015-02-14 17:05 590java 反编译工具 -
java中 对象的克隆(clone)
2010-05-01 02:40 835java中 克隆一个对象需要三步: 1:克隆的对象实现 Clo ...
相关推荐
NULL 博文链接:https://sdfx.iteye.com/blog/2201116
有效测量出 java 对象 内存 大小 可供缓存等计算
注入javaagent使用Instrumentation测量Java对象的大小
NULL 博文链接:https://312256159-qq-com.iteye.com/blog/1582196
主要介绍了计算一个Java对象占用字节数的方法,较为详细的分析了Java中各类对象所占用的字节数,需要的朋友可以参考下
NULL 博文链接:https://spice.iteye.com/blog/1104340
JAVA对象所占内存大小计算例子,博文地址:http://blog.csdn.net/u012787710/article/details/53164226
统计缓存大小(查看java对象所占的内存大小).
java中的栈(深层了解java虚拟机对对象的内存分布)
NULL 博文链接:https://treemanfm.iteye.com/blog/2038954
测试java对象占用内存大小的例子,可以测试常用的类型
java实现使用javolution完成数据接收过程中大小端转换的问题
NULL 博文链接:https://langyu.iteye.com/blog/1167581
java-sizeof-0.0.4:一个查看java对象占用内存大小
一个固定大小的,高效的对象池。主要用于对象池。 a fixed and high efficency object pool
1)指针碰撞(Bump the Pointer): Java堆中内存绝对规整(所有用过的内存放在一边,空闲的内存放在另一边,中间放一个指针作为分界点的指示器),所分配的内存仅需要把指针向空闲空间那边挪动一段与对象大小相等的...
计算机后端-Java-Java核心基础-第15章 面向对象07 21. 接口练习:比较对象大小.avi
比较两个对象的年龄大小,输出年龄较大者的对象的所有域信息(toString方法)。创建CollegeStudent类的一个对象;输出目前的CollegeStudent类对象的人数;修改对象的姓名、年龄和专业;然后再显示这个对象的全部信息...
比较list得到不同的对象 慎重注意list的大小变化和索引 精简算法
命令行: java -XX:+PrintCommandLineFlags -version 查看jvm默认参数 分别是 -XX:+UseCompressedOops 和 -XX:+UseCompressedClassPointers 这2个参数都是默认开启(+代表开启,-代表关闭) UseCompressedOops:普通...