「java类属性排序」javalist排序多属性排序
本篇文章给大家谈谈java类属性排序,以及javalist排序多属性排序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
Java开发idea如何让class的属性按长度从长到短排列整齐?
FormatFieldPyramid 这个插件可以将Java文件的全局字段排序,按代码的长度由短到长排序。
不选中内容,默认格式化整个文件,这时idea会自动根据属性的修饰符分组。选中内容,只会格式化选中内容,而且完全按长度排序,不分组,建议选中内容格式化。
java中如何进行属性值排序
你可以把你要排序的属性放到一个TreeSet中,这个类在java.util包中,而且这个TreeSet中只能存放这个属性,也就是元素对象类型要一致!然后这个对象要是可以比较的,就是说你定义的这个类是可以比较的,这个类要实现Comparable接口,然后实现其中的compareTo方法,给出你的比较方法,像我下面的例子中我对学生这个类用年龄排序,如果年龄相同的TreeSet会把这个对象舍去的,所以你可以给出多个比较方法,比如说年龄相同,就按照姓名在排序,姓名相同再按照学号排序,保证加到TreeSet中的元素不同,因为TreeSet会根据你的比较方法自动舍去相同的元素!
import java.util.*;
public class SetTest {
/**
* @param args
*/
public static void main(String args[]){
TreeSet hs=new TreeSet();
hs.add(new Student("cyq",26));
hs.add(new Student("binxin",24));
hs.add(new Student("binxin",23));
for (Object o:hs){
System.out.println(o);
}
}
}
class Student implements Comparable{
String name;
int age;
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String toString(){
return name+":"+age;
}
public int compareTo(Object o) {
Student s=(Student)o;
return this.age-s.age;
}
}
JAVA中如何根据类的属性进行排序,然后输出类的所有信息,求大神解答。
您好,您这样:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
/**
* 作者: 版本: 要求:设计一个具备比较功能的类(例如 员工类, 需要有姓名, 年龄, 薪水三个成员属性,需要私有并提供get, set方法,
* 可以通过构造函数进行 初始化,并且按照薪水进行排序)。
*/
public class Employee {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
private int age;
private int salary;
public Employee(String na, int ag, int sa) {
name = na;
age = ag;
salary = sa;
}
@Override
public String toString() {
return this.name + " , " + this.getAge() + " , " + this.salary;
}
public static void main(String args[]) {
Employee e1 = new Employee("霸气外漏老总", 35, 20000);
Employee e2 = new Employee("疯牛涕淌小三", 29, 7000);
Employee e3 = new Employee("万年屌丝基佬", 27, 4700);
List list = new ArrayList();
list.add(e1);
list.add(e2);
list.add(e3);
Comparator comp = new ComparatorImpl();
Collections.sort(list, comp);
for (Employee e : (ListEmployee)list) {
System.out.println(e);
}
}
}
class ComparatorImpl implements ComparatorEmployee {
public int compare(Employee e1, Employee e2) {
int salary1 = e1.getSalary();
int salary2 = e2.getSalary();
if (salary1 salary2) {
return 1;
} else if (salary1 salary2) {
return -1;
} else {
return 0;
}
}
}
关于java类属性排序和javalist排序多属性排序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-26,除非注明,否则均为
原创文章,转载请注明出处。