package com.yu.entity; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; //继承Comparable接口 public class SocketEntity implements Comparable<SocketEntity> { public static final int SEND_DATA = 1; //发送数据 public static final int GET_DATA = 2; //获取数据 public static final int DELETE_DATA = 3; //删除数据 public static final int DATA_BUFF = 1024; //写入读取缓冲区 public static final int FREE = 1; //客户端空闲 public static final int BUSY = 0; //客户端忙碌 private long frequency = 0L; //使用频率 private String name = null; //客户端名称 private Socket socket = null; //客户端 private int status = 0; //服务状态 空闲FREE 忙碌BUSY OutputStream os = null; //输出流 向客户端写数据 InputStream is = null; //输入流 向客户端读数据 public SocketEntity(String name, Socket socket, int status) { this.name = name; this.socket = socket; this.status = status; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Socket getSocket() { return socket; } public void setSocket(Socket socket) { this.socket = socket; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public long getFrequency() { return frequency; } public void setFrequency(long frequency) { this.frequency = frequency; } public void frequencyAddition(){ long frequency = this.getFrequency(); this.setFrequency(frequency++); } public OutputStream getOs() { try { return this.getSocket().getOutputStream(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } public InputStream getIs() { try { return this.getSocket().getInputStream(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } @Override public int compareTo(SocketEntity o) { if (this.getFrequency() == o.getFrequency()){ return 0; //等于 }else if (this.getFrequency() > o.getFrequency()){ return -1; //小于 }else{ return 1; //大于 } } }
调用方法如下:
Collections.sort(socketEntity);
相关推荐
本文将深入探讨如何在C#中实现实体类和实体类集合的自动排序,以及如何将它们绑定到控件如DataGridView以支持排序功能。 首先,让我们了解什么是实体类。实体类是代表数据库表或服务API中的一个记录的类。它通常...
下面我们将深入探讨如何实现一个简化的 ArrayList 类——SimpleArrayList,以及涉及到的关键方法。 ### 构造器 SimpleArrayList 提供了两个构造器:一个无参构造器和一个带 int 参数的构造器。无参构造器默认创建...
例如,`String`类就实现了`Comparable`,按字典顺序比较字符串。 ```java public class MyObject implements Comparable<MyObject> { private int value; public int compareTo(MyObject other) { return this....
1. **员工实体类(Employee)**:这是系统的基础,需要定义一个Employee类来封装员工的属性,如姓名、工号、部门、职位、薪资等。可以使用私有成员变量和getter/setter方法来实现封装。 2. **ArrayList存储**:在...
Java实体类中Set按照对象的某个字段对set排序 Java实体类中Set按照对象的某个字段对set排序是Java开发中的一种常见需求,特别是在实体类中使用Set集合存储数据时。这种需求主要是为了在查询出实体类对象时,可以...
4. 处理读取结果:调用`readExcelToList`方法后,返回的是User实体类的List,你可以对这个List进行进一步的处理,如数据过滤、排序或保存到数据库等。 在提供的压缩包文件"cp-utils-excelreader"中,可能包含了用于...
在Java中,想要去重List对象列表,首先需要重写实体类的equals和hashCode方法。equals方法用于比较两个对象是否相同,而hashCode方法用于计算对象的哈希码值。 例如,假设我们有一个Student类,想要去重Student对象...
Collections.sort()方法通常用于对列表进行排序,例如对ArrayList、LinkedList、Vector等列表类型进行排序。该方法的签名为: `public static <T> void sort(List<T> list, Comparator<? super T> c)` 其中,list...
本文将详细介绍两种在Java中对List进行排序的方法:实体类实现Comparable接口和使用Comparator接口。 首先,我们来了解一下基本背景。Java的`java.util.List`接口是`java.util.Collection`接口的一个子接口,用于...
`List`的一个主要特点是它可以包含重复元素,并且元素按插入顺序排序。Java标准库提供了几种实现`List`接口的类,如`ArrayList`、`LinkedList`和`Vector`等。其中,`ArrayList`是最常用的实现之一,它基于动态数组...
实体类如HashSet实现了Set接口,保证元素唯一性,TreeSet则可以按特定顺序排序。 - Map:键值对的映射,键唯一,值可重复,如HashMap、TreeMap。实体类如HashMap实现了Map接口,提供键值对的快速存取,TreeMap则...
"List列表内部对象某些参数的排序"是指在Java中,使用List接口的实现类(如ArrayList或LinkedList)存储对象,并根据这些对象的某个属性或参数进行排序。这通常通过实现Comparable接口或者使用Comparator接口来实现...
这是一个基本的实体类示例: ```java public class News { private int id; private String title; private int hits; // 构造函数、getter和setter方法省略 } ``` 现在我们有了一个简单的`News`类,接下来是...
:接口可以继承接口,抽象类可以实现接口,抽象类可以继承实体类,但有个条件,条件是,实体类必须要有明确的构造函数。 12. 构造器 Constructor 是否可以被继承?是否可以被 Override?:Constructor 不可以被继承...
为了将一个普通的 Java 对象转换为 JPA 的实体类,我们需要使用 `@Entity` 注解。例如: ```java @Entity @Table(name = "users") public class Users implements Serializable { // 具体字段定义... } ``` 这里...
3. **Java实体类**:包含bag属性的实体类将定义相关的方法,如getter和setter。 4. **操作示例**:如何在Java代码中添加、删除和查询bag集合中的元素。 通过以上信息,我们可以深入了解Hibernate的bag集合映射,...
7. **一对多映射**:在 Hibernate 中,表示一个实体类与多个实体类之间的关联关系。例如,`One` 类与 `Many` 类的一对多关系: ```java @OneToMany(mappedBy = "one") private List<Many> manyList; ``` 在 `...
在处理如联系人或城市列表这类需要按字母顺序排序的数据时,通常需要实现A-Z字母排序和过滤搜索功能。本教程将详细介绍如何在Android中实现这些功能,同时还会涉及将汉字转换为拼音的技术。 首先,我们创建一个名为...
实体类如`ArrayList`、`LinkedList`、`HashSet`等实现了这些接口,提供了具体的数据结构和操作。`Iterator`接口是遍历集合元素的核心工具。 **10.2 Collection接口** `Collection`是最基础的接口,表示一组对象。它...