`
oywl2008
  • 浏览: 1050576 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Java Array sort and Collections sort

 
阅读更多

 

package com.test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

class Interval {
	int start;
	int end;
	public Interval(int start, int end) {
		super();
		this.start = start;
		this.end = end;
	}
	public int getStart() {
		return start;
	}
	public void setStart(int start) {
		this.start = start;
	}
	public int getEnd() {
		return end;
	}
	public void setEnd(int end) {
		this.end = end;
	}
}

public class IntervalTests {
	
	public static void main(String[] args) {
		Interval v1 = new Interval(5,6);
		Interval v2 = new Interval(5,8);
		Interval v3 = new Interval(6,6);
		Interval v4 = new Interval(7,6);
		Interval v5 = new Interval(8,14);
		Interval v6 = new Interval(8,11);

		List<Interval> list = new ArrayList<>();
		list.add(v4);
		list.add(v5);
		list.add(v6);
		list.add(v1);
		list.add(v2);
		list.add(v3);
		System.out.println("List Start:");
		for(Interval v : list){
			System.out.println(v.start + " : " + v.end);
		}
	
		System.out.println("List Result:");

		list.sort((Interval a, Interval b) -> ( a.start == b.start ? (a.end - b.end ):(a.start - b.start)));
		
		for(Interval v : list){
			System.out.println(v.start + " : " + v.end);
		}
		System.out.println("");
		System.out.println("List End:");

		Interval[] arr = new Interval[6];
			arr[0] = v4;
			arr[1] = v2;
			arr[2] = v3;
			arr[3] = v1;
			arr[4] = v5;
			arr[5] = v6;
		System.out.println("Array Start:");

		for(Interval v:arr){
			System.out.println(v.start + " : " + v.end);
		}
		Arrays.sort(arr,(Interval a, Interval b) -> ( a.start == b.start ? (a.end - b.end ):(a.start - b.start)));
		System.out.println("Sort Done");
		System.out.println("Array Result:");

		for(Interval v:arr){
			System.out.println(v.start + " : " + v.end);
		}
		System.out.println("Array End:");
	}

}

 

 

 

Result:

List Start:
7 : 6
8 : 14
8 : 11
5 : 6
5 : 8
6 : 6
List Result:
5 : 6
5 : 8
6 : 6
7 : 6
8 : 11
8 : 14

List End:
Array Start:
7 : 6
5 : 8
6 : 6
5 : 6
8 : 14
8 : 11
Sort Done
Array Result:
5 : 6
5 : 8
6 : 6
7 : 6
8 : 11
8 : 14
Array End:

 

 

 

 

 

 

分享到:
评论

相关推荐

    Collection与Collections,Array与Arrays的区别

    Collection与Collections,Array与Arrays的...Collection和Array是Java中两个基本的数据结构,而Collections和Arrays是两个静态类,提供了对集合和数组的各种操作。了解他们之间的区别对于Java开发人员来说非常重要。

    Array sort.rar

    在这个名为“Array sort”的压缩包中,可能包含了一些示例源代码,演示了如何使用`Collections`数据结构和`Array.Sort()`方法。这些源码可能是以`.txt`格式存储的,可以通过文本编辑器打开阅读。在这些代码中,...

    Collections

    In the realm of iOS development, collections play a crucial role in organizing and managing data. The Apple documentation on collections provides a comprehensive overview of various types of ...

    Sort-Collections-Typescript

    首先,我们要理解在JavaScript中的`Array`对象提供了内置的`sort()`方法,这个方法允许我们对数组元素进行排序。在TypeScript中,我们可以利用这个方法来对各种类型的数组进行排序,包括数字、字符串以及自定义对象...

    JAVA基于Arrays.sort()实现数组升序和降序

    "JAVA基于Arrays.sort()实现数组升序和降序" 在 Java 中,排序数组是非常常见的操作之一,而 Java 提供了多种方式来实现数组的排序,其中一种常用的方法是使用 Arrays.sort() 方法。今天,我们将详细介绍如何使用 ...

    java-array.zip_源代码;array

    2. 排序:`Arrays.sort()`方法可以对数组进行排序,而集合框架中的`Collections.sort()`方法则适用于`List`接口实现类。 3. 转换:`Arrays.asList()`可以把数组转换为`List`,`ArrayList`的构造函数可以接受一个数组...

    Java数组与集合

    例如,`Collections.sort(list)`可以对List接口的实现类进行排序,前提是列表中的元素实现了Comparable接口,或者在调用sort时传入自定义的Comparator。 在编程实践中,推荐使用集合接口而不是具体的实现类,这样...

    java基础之Collection与Collections和Array与Arrays的区别

    Java 基础之 Collection 与 Collections 和 Array 与 Arrays 的区别 Collection 是 Java.util 下的一个接口,它是各种集合结构的父接口。继承与他的接口主要有 Set 和 List。Collection 是一个抽象概念,不能直接...

    java 集合分组与排序

    Java集合框架提供两种主要的排序方式:`Collections.sort()`方法和流API的`sorted()`方法。 - `Collections.sort()`:适用于`List`接口的实现类,如`ArrayList`和`LinkedList`。它直接在原地对列表进行排序,无需...

    C#使用sort方法对数组进行快速排序

    这个方法是通过.NET框架中的`System.Collections.Generic`命名空间下的`List&lt;T&gt;`类提供的,同时也存在于`Array`类中。本篇文章将深入探讨如何使用`Sort`方法对数组进行快速排序以及其背后的实现原理。 首先,让我们...

    java对象排序

    `java sort`标签表明我们关注的是使用Java内置的排序机制。本文将深入探讨Java中的对象排序,包括基本概念、API使用以及自定义排序规则。 ### 1. Java对象排序基础 在Java中,我们可以对两种类型的元素进行排序:...

    Java 程序对数组元素进行降序排序

    Arrays.sort(array, Collections.reverseOrder()); // Printing the elements System.out.println(Arrays.toString(array)); } } ``` 输出结果为 [5, 4, 3, 2, 1],时间复杂度为 O(N log N)。 2. 使用排序和...

    Java容易被忽视的API

    `java.util.Arrays.sort()` 和 `java.util.Collections.sort()` 是两个主要的排序函数,它们提供了多种重载形式,以适应不同的数据类型和排序需求。 1. `Arrays.sort(int[])` 和 `Arrays.sort(int[], int, int)` ...

    Java.util.Collection类的学习.pdf

    Collections.sort(list); for (int i = 0; i &lt; array.length; i++) { System.out.println(list.get(i)); } ``` 结果:23, 111, 112, 231, 456 * 混排(Shuffling) 使用shuffle方法可以打乱在一个List中的任何...

    sort从大到小排序.zip

    对于Java,我们可以使用`Collections.sort()`方法配合自定义比较器Comparator实现降序排序: ```java import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util....

    java并行排序程序 parallel

    在Java的`Arrays`或`Collections`类中,我们可以找到`sort()`方法的并行版本,例如`Arrays.parallelSort()`和`Collections.parallelSort()`。这些方法会在适当的时候自动利用多核处理器的并行能力对数组或集合进行...

    排序排序 array to object?? attachment

    Java作为面向对象的语言,其内置的`Collections.sort()`和`Arrays.sort()`方法提供了对集合和数组的排序功能,同时也支持自定义比较器以满足不同排序需求。 在Java中,我们可以使用内置的排序方法对数组进行升序或...

    BATjava面试含答案

    4. 使用 List 自身的 sort 方法,或者使用 Collections.sort(list) 方法来对 List 进行排序。 5. Arrays.asList 使用的是 final 数组,并且不支持 add 方法,不支持扩容。 6. List&gt;Array 使用 toArray 方法,Array&gt;...

    关于中文英文混合排序javaDemo

    在实际开发中,如果涉及到大量数据的排序,还可以考虑使用`Comparator`接口,配合`Collections.sort()`方法,实现更复杂的排序逻辑。例如,你可能需要在保持英文字符顺序的同时,让中文字符按照中文拼音的顺序排列。...

    Java 对象排序详解.rar_java 对象排序_对象_排序

    Java提供了一个内置的方法`Collections.sort()`,可以方便地对ArrayList中的元素进行排序。这个方法使用了快速排序或归并排序算法,具体取决于元素类型和JVM实现。要对自定义对象进行排序,你需要确保你的类实现了...

Global site tag (gtag.js) - Google Analytics