`
starbhhc
  • 浏览: 654646 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

Java Arraylist排序

阅读更多
import java.util.*;   
  
public class Test {   
  
public static void main(String[] args){   
  List<Point> points=new ArrayList<Point>();   
     
  Point point1=new Point();   
  point1.setX(1324);   
  point1.setY(345);   
  point1.setZ(436);   
  points.add(point1);   
     
  Point point2=new Point();   
  point2.setX(23);   
  point2.setY(8941.656);   
  point2.setZ(431412);   
  points.add(point2);   
     
  Point point3=new Point();   
  point3.setX(786584);   
  point3.setY(23452);   
  point3.setZ(43563);   
  points.add(point3);   
     
  //根据X排序   
  Collections.sort(points,new SortByX());   
     
  for(Point p:points){   
   System.out.print(p.getX()+"\t"+p.getY()+"\t"+p.getZ());   
   System.out.println();   
  }   
     
  //根据Y排序   
//  Collections.sort(points,new SortByY());   
//     
//  for(Point p:points){   
//   System.out.print(p.getX()+"\t"+p.getY()+"\t"+p.getZ());   
//   System.out.println();   
//  }   
//     
//  //根据Z排序   
//  Collections.sort(points,new SortByZ());   
//     
//  for(Point p:points){   
//   System.out.print(p.getX()+"\t"+p.getY()+"\t"+p.getZ());   
//   System.out.println();   
//  }   
}   
  
}   
  
class Point{   
private double x;   
private double y;   
private double z;   
public double getX() {   
  return x;   
}   
public void setX(double x) {   
  this.x = x;   
}   
public double getY() {   
  return y;   
}   
public void setY(double y) {   
  this.y = y;   
}   
public double getZ() {   
  return z;   
}   
public void setZ(double z) {   
  this.z = z;   
}   
public Point(){}   
}   
  
//根据X排序   
class SortByX implements Comparator{   
public int compare(Object obj1,Object obj2){   
  Point point1=(Point)obj1;   
  Point point2=(Point)obj2;   
  if(point1.getX()>point2.getX())   
   return 1;   
  else  
   return 0;   
}   
}   
//根据Y排序   
class SortByY implements Comparator{   
public int compare(Object obj1,Object obj2){   
  Point point1=(Point)obj1;   
  Point point2=(Point)obj2;   
  if(point1.getY()>point2.getY())   
   return 1;   
  else  
   return 0;   
}   
}   
//根据Z排序   
class SortByZ implements Comparator{   
public int compare(Object obj1,Object obj2){   
  Point point1=(Point)obj1;   
  Point point2=(Point)obj2;   
  if(point1.getZ()>point2.getZ())   
   return 1;   
  else  
   return 0;   
}   
}    
分享到:
评论

相关推荐

    Java ArrayList实现的快排,归并排序,堆排序

    ArrayList作为Java集合框架中的一员,它提供了丰富的操作接口,包括对元素的添加、删除、修改以及排序等。本篇将重点讲解如何利用ArrayList实现快速排序(Quick Sort)、归并排序(Merge Sort)和堆排序(Heap Sort...

    java中对ArrayList进行排序

    java中对ArrayList进行排序的方法参考

    arrayList排序

    - 对于大量数据的排序,ArrayList的性能可能不如使用LinkedList,因为ArrayList排序时涉及到大量的索引计算和元素移动。 - 如果ArrayList中元素的类型不一致,`Collections.sort()`会抛出ClassCastException异常,...

    java ArrayList集合的应用

    用java语言编写一个程序实现学员成绩管理,每个学员包括3门课的成绩,从键盘输入学员信息, 包括学号、姓名、三门课成绩,计算出学员的平均成绩,按照学员平均成绩由大到小排序 插入功能:在排序后的学员成绩表中...

    java对ArrayList排序代码示例

    然而,ArrayList本身并不提供排序功能,但我们可以借助Java的Collections类提供的sort()方法来实现排序。本文将通过三个示例详细讲解如何在Java中对ArrayList进行排序。 首先,我们来看一个简单的例子,创建一个名...

    java的arraylist排序示例(arraylist用法)

    总结一下,这个示例展示了如何在Java中使用ArrayList,以及如何通过Comparator接口自定义排序规则。ArrayList是动态数组,提供便利的增删改查操作。`Collections.sort()`方法结合Comparator可以实现自定义排序,使得...

    ArrayList排序和遍历补充案例.java

    ArrayList排序和遍历补充案例.java

    java List 排序 Collections.sort

    总结起来,`Collections.sort()`是Java中对List进行排序的标准工具,它支持自然排序和自定义排序。了解其工作原理和优化技巧,可以帮助我们在编程实践中更高效地处理数据。通过阅读和理解`Collections.sort()`的源码...

    java 中文姓氏 排序

    ### Java 中文姓氏排序详解 #### 一、引言 在处理中文数据时,我们经常需要对含有中文姓名的数据进行排序。Java 提供了多种方式进行排序,包括使用 `Collections.sort()` 方法配合自定义比较器(`Comparator`)。...

    java中ArrayList的用法

    ### Java中ArrayList的用法详解 #### 一、概述 `ArrayList`是Java集合框架中的一个动态数组类,它能够存储任意类型的对象,并且在运行时动态调整其大小。这使得`ArrayList`成为处理数量未知的数据集合时的一个非常...

    java冒泡排序java冒泡排序集锦方法!

    `Collections.sort()` 是 Java 中一种快速且高效地对集合(如 ArrayList)进行排序的方法。可以自定义比较器来指定排序规则。 **示例代码分析**: ```java public class Main { public static void main(String[] ...

    基于ArrayList的对象多属性值排序

    在Java编程中,基于ArrayList的对象多属性值排序是一项常见的任务,尤其在处理数据集合时。ArrayList是Java集合框架的一部分,它提供了动态数组的功能,允许我们存储和操作对象数组。本主题将深入探讨如何对...

    Java针对ArrayList自定义排序的2种实现方法

    Java针对ArrayList自定义排序的2种实现方法 Java语言中提供了多种方式来实现ArrayList的自定义排序,今天我们将介绍其中的两种实现方法。首先,让我们了解一下ArrayList的基本概念。ArrayList是一种动态数组,能够...

    Java常用排序算法&程序员必须掌握的8大排序算法+二分法查找

    在编程领域,尤其是在Java开发中,排序算法是基础且至关重要的知识。无论是处理数据库查询、数据分析,还是优化程序性能,熟练掌握各种排序算法都显得尤为关键。本资料包聚焦于"Java常用排序算法"和"程序员必须掌握...

    java教程之二个arraylist排序的示例分享

    总结一下,Java中对ArrayList排序的步骤包括: 1. 创建一个ArrayList,并填充需要排序的对象。 2. 实现Comparator接口,创建一个或多个比较器类,覆盖`compare()`方法,定义排序规则。 3. 使用`Collections.sort()`...

    java 集合分组与排序

    下面我们将深入探讨如何在Java中实现集合的分组与排序。 1. **集合分组**: 集合分组通常涉及到`GroupingBy`操作,这在Java 8引入的流(Stream)API中得到了很好的支持。`Collectors.groupingBy`方法允许我们将...

    java List排序工具类

    java List排序工具类 使用示例: new OrderUtils().order(list, "name", OrderUtils.DESC); 相关实例代码: public static void main(String[] args) { List&lt;Person&gt; list = getData(); // 获取无序数据 new ...

    arraylist 对象 数组排序

    在Java编程语言中,ArrayList是...总的来说,对ArrayList中的对象进行排序涉及到Java集合框架的核心概念,包括List接口、Collections工具类以及Comparator接口。理解这些知识点对于编写高效、灵活的Java代码至关重要。

Global site tag (gtag.js) - Google Analytics