「javaarraylist排序」java arrays排序

博主:adminadmin 2022-12-08 22:24:05 67

本篇文章给大家谈谈javaarraylist排序,以及java arrays排序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java arraylist 按照对象的属性排序

List中的元素是对象的话,若要按该List中元素的某个属性进行排序,那么应该重写里面元素的hashCode和equals方法,然后再排序。比如该问题要重写course的hashCode和equals方法

java如何对Arraylist数组进行排序(用comparable)

看代码:

import java.util.ArrayList;

import java.util.Arrays;

import java.util.Collections;

public class Demo {

public static void main(String[] args) throws Exception {

Pair[] pairs = {

new Pair(0, 1),

new Pair(2, 9),

new Pair(7, 0),

new Pair(8, 8),

new Pair(8, 6),

new Pair(9, 2),

new Pair(1, 5),

new Pair(8, 2),

new Pair(9, 15),

new Pair(9, 5)

};

ArrayListPair pairList = new ArrayList(Arrays.asList(pairs));

System.out.println("排序前:");

System.out.println(Arrays.toString(pairs));

Arrays.sort(pairs); // 对数组排序

System.out.println("排序后:");

System.out.println(Arrays.toString(pairs));

System.out.println("排序前:");

System.out.println(pairList);

Collections.sort(pairList); // 对 ArrayList 排序

System.out.println("排序后:");

System.out.println(pairList);

}

}

// 继承 Comparable 接口排序该类是 “可排序的”

//  里面的是排序时与当前实例进行比较的实例的类型

// 一般都和当前实例是同一个类型,比如这里就是 Pair 的实例 和 Pair 的实例比较

class Pair implements ComparablePair {

public int left;

public int right;

public Pair(int left, int right) {

this.left = left;

this.right = right;

}

@Override

public String toString() {

return "[" + left + ", " + right + "]";

}

// 排序规则,先按 left 排序,再按 right 排序

@Override

public int compareTo(Pair that) {

if (this.left  that.left) {

return 1;

} else if (this.left  that.left) {

return -1;

} else if (this.right  that.right) {

return 1;

} else if (this.right  that.right) {

return -1;

}

return 0;

}

}

可以发现先按 left 排序,如果 left 相等,则按 right 排序

Java中的ArrayList怎么进行冒泡排序

java中的ArrayList进行冒泡排序,主要是循环遍历取出数据,然后进行比较排序,如下代码:

package com.qiu.lin.he;

import java.util.ArrayList;

public class Ceshi {

public static void main(String[] args) {

ArrayListInteger list = new ArrayListInteger();

list.add(76);

list.add(4);

list.add(786);

list.add(43);

list.add(21);

list.add(432);

list.add(10);

for (int i = 0; i  list.size() - 1; i++) {

for (int j = 1; j  list.size() - i; j++) {

Integer a;

if (list.get(j - 1).compareTo(list.get(j))  0) { // 比较两个整数的大小

a = list.get(j - 1);

list.set((j - 1), list.get(j));

list.set(j, a);//交换数据

}

}

}

for (Integer s : list) {

System.out.println(s.intValue());//输出arraylist的数据

}

}

}

运行结果如下:

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

The End

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