培训首页  >  JAVA新闻  >  通常Java开发人员如何进行数据排序?

通常Java开发人员如何进行数据排序?

[2017-10-17 14:37:31] 浏览量:239 来源:

北大青鸟瀚唐校区

  淮安北大青鸟,Java培训。

  在实际工作中和平时学习中,以及分析开源Java项目的大量源代码后,我发现Java开发人员通常使用两种方法。一是使用Collections或 Arrays的 sort()方法 ,另一种是使用数据结构排序,如 TreeMap和 TreeSet。

  1、使用sort()方法进行排序,这也比较常的方法:

  如果我们写代码时,用的是一个集合,那么使用Collections.sort()方法。

  代码举例:

  // 集合排序法Collections.sort

  List

  Collections.sort(list, new Comparator

  public int compare(String o1, String o2){

  return o1.toString().compareTo(o2.toString());

  }});

  如果代码实现中用的是一个数组,那么使用 Arrays.sort()方法。

  // 数组排序法Arrays.sort

  String[] arr =new String[10];

  Arrays.sort(arr, new Comparator

  public int compare(String o1, String o2){

  return o1.toString().compareTo(o2.toString());

  }});

  如果我们已经建立好一个集合或数组,用这种方法排序非常方便。

  2、使用数据结构排序方法

  如果我们代码实现中是一个或一组列表,那么使用 TreeSet进行排序。

  // TreeSet排序方法

  Set

  Set

  public int compare(String o1, String o2) {

  return o1.toString().compareTo(o2.toString());

  }

  });

  sortedSet.addAll(unsortedSet);

  如果代码实现是一个Map,那么使用 TreeMap进行排序。

  // TreeMap方法

  Map

  Map

  sortedMap.putAll(unsortedMap);

  //TreeMap方法对比

  Map

  public int compare(ObjectName o1, ObjectName o2) {

  return o1.toString().compareTo(o2.toString());

  }

  });

  sortedMap.putAll(unsortedMap);

  这种方法在开发过程中非常有用,如果你想实现在集合中做搜索操作,数据结构排序方法,会提率。

  网络配图

  3、以下是一个经常使用的不合理的方法

  比如使用自定义排序算法,下面以代码为例进行说明,这种方法不仅算法是无效的,而且可读性很差。

  double t;

  double[] r = new double[5];

  for (int i = 0; i < 2; i++)

  for (int j = i + 1; j < 3; j++)

  if (r[j] < r[i]) {

  t = r[i];

  r[i] = r[j];

  r[j] = t;

  }

  学it就选淮安北大青鸟!!!


文中图片素材来源网络,如有侵权请联系删除
  • Adobe认证
  • Oracle认证
  • 思科认证
  • 微软认证
  • Linux认证
  • 其他
  • 职业技能提升
  • 考证找工作
  • 兴趣爱好
  • 周末班
  • 全日制白班
  • 随到随学

网上报名

热门信息

温馨提示