「java集合sort」java集合sortthen

博主:adminadmin 2022-11-23 22:52:07 37

今天给各位分享java集合sort的知识,其中也会对java集合sortthen进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java中的SORT怎么用

Java中的Sort(排序)通常指的是Collections.sort() 对 List 的排序,该排序方式有两种不同改的使用方法:

第一种是list中的对象实现Comparable接口,如下

public class User implements ComparableUser{

private String name;

private Integer order;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public Integer getOrder() {

return order;

}

public void setOrder(Integer order) {

this.order = order;

}

public int compareTo(User arg0) {

return this.getOrder().compareTo(arg0.getOrder());

}

}

此时可以直接排序

public static void main(String[] args) {

User user1 = new User();

user1.setName("a");

user1.setOrder(1);

User user2 = new User();

user2.setName("b");

user2.setOrder(2);

ListUser list = new ArrayListUser();

//此处add user2再add user1

list.add(user2);

list.add(user1);

Collections.sort(list);

for(User u : list){

System.out.println(u.getName());

}

}

第二种方法是根据Collections.sort重载方法来实现,例如:

public static void main(String[] args) {

User user1 = new User();

user1.setName("a");

user1.setOrder(1);

User user2 = new User();

user2.setName("b");

user2.setOrder(2);

ListUser list = new ArrayListUser();

list.add(user2);

list.add(user1);

Collections.sort(list,new ComparatorUser(){

public int compare(User arg0, User arg1) {

return arg0.getOrder().compareTo(arg1.getOrder());

}

});

for(User u : list){

System.out.println(u.getName());

}

}

JAVA中如何使用SORT从大到小排.

根据你这要求,只有一个办法,但是有点约束:

import java.util.Arrays;

import java.util.Collections;

public class Test {

public static void main(String[] args) {

//注意,只能用对象类型,不可以使用简单类型 如int[] num则报错

Integer[] num = {5,8,3,9,1};

//如果是num是List或 Set,则用Collections.sort(num,Collections.reverseOrder());

Arrays.sort(num,Collections.reverseOrder());

for(int i=0;inum.length;i++){

System.out.println(num[i]);

}

}

}

Java中如何对集合排序

Java内建的排序(冒泡):Java集合有两个实现的工具类,Collections和Arrays。Collections针对集合类型。Arrays针对数组。只需要一个为你排序需要的定制的Comparator或Comparable的实现,将其作为参数传给Collections或Arrays的sort方法就行。

可以自己用程序去实现这个排序。用for从原List里面一个一个拿出来比较然后一个新建的List里面去。

楼主看一下参考资料。

java中的的sort和comparable的区别与联系

类T实现comparable

这个接口表示拥有

int

compareTo(T

t2)

这个方法。这就表示T的对象是可以两两比较大小的。

sort(Collection

c)

这个排序方法,正是利用T中的compareTo方法对T的对象集合中的对象两两进行比较来排序的。这就是sort与comparable的联系。

至于区别,一个功能是排序,一个功能是两两比较,功能是不相同的。但是能够两两比较是能排序的前提,试想一下如果两个对象不能比大小,怎么排序呢?

Java集合中sort方法,前面的两个泛型限定是什么意思?

? extends Comparable

这个?就是传过来的对象不确定,而且必须是Comparable的子类或者子接口。

? super T

这个表示传过来的值,是定义T泛型的父类,如果不是给出代码检测失败。

java arraylist 的sort怎么用

在排序中,最重要的是自己实现自己的比较的行数,即是implements Comparator

实现方法 public int compare(Object o1, Object o2) 最为重要..

举个例子:

package book.arrayset;

import java.util.Comparator;

/**

* 整数比较器,将整数按降序排列

*/

class MyIntComparator implements Comparator{

/**

* o1比o2大,返回-1;o1比o2小,返回1。

*/

public int compare(Object o1, Object o2) {

int i1 = ((Integer)o1).intValue();

int i2 = ((Integer)o2).intValue();

if (i1 i2){

return 1;

}

if (i1 i2){

return -1;

}

return 0;

}

}

//上面的为比较的函数实现,下面真正的添加数据,

//通过调用上面的比较函数实现自定义排序的功能

package book.arrayset;

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

/**

* 对List中的元素排序

*/

public class SortList {

public static void output(List list){

if (list == null){

return;

}

for (int i=0; ilist.size(); i++){

System.out.print(list.get(i).toString() + " ");

}

System.out.println();

}

public static void main(String[] args) {

List list = new ArrayList();

list.add(new Integer(5));

list.add(new Integer(8));

list.add(new Integer(1));

list.add(new Integer(3));

list.add(new Integer(2));

list.add(new Double(3.1));

System.out.println("list开始状态");

SortList.output(list);

//Collections.sort方法将用默认比较器排列list的元素

Collections.sort(list);

System.out.println("list被默认比较器排序后的状态");

SortList.output(list);

//下面将list的元素按降序排列

Collections.sort(list, new MyIntComparator());

System.out.println("list被自定义比较器排序后的状态");

SortList.output(list);

//因此,对于任意自定义类的对象,当保存在集合类容器中后,如果需要对它们进行排序,

//需要自己提供适应于自定义类的比较器,自定义比较器必须实现Comparator接口。

//然后采用Collections.sort(list, comparator);方法对容器进行排序。

}

}

关于java集合sort和java集合sortthen的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-23,除非注明,否则均为首码项目网原创文章,转载请注明出处。