java List 排序之冒泡排序实例代码

 更新时间:2017年05月26日 11:39:56   作者:ht896632  
这篇文章主要介绍了java List 排序之冒泡排序实例代码的相关资料,需要的朋友可以参考下

java List 排序之冒泡排序实例代码

List排序,这里介绍两种排序:

1.Collections.sort()排序:

假如List集合中放的是Menu对象。

public class Menu{
 private int id;
 private String name;
 private int seq;//自定义排序字段

 //构造函数、getter、setter省略.......

}

 List<Menu> menus=new ArrayList<Menu>();
 menus.add(new Menu(1,"系统菜单",2));
 menus.add(new Menu(2,"我的菜单",5));
 menus.add(new Menu(3,"我的菜单",3));

//排序Collections.sort(menus, new ComparatorMenu());

//比较器类
class ComparatorMenu implements Comparator<Menu> { 
 public int compare(Menu m1, Menu m2) { 
   //比较的字段,这里是按照自定义排序字段进行升序排列,如果要降序,对调两个比较参数即可。
   return m1.getSeq().compareTo(m2.getSeq());
 } 
}

//输出结果
1,"系统菜单",2
3,"我的菜单",3
2,"我的菜单",5

2.冒泡排序

for (int i = 0; i < menus.size() - 1; i++) {
 for (int j = 1; j < menus.size() - i; j++) {
   Menu menu;
   if ((menus.get(j - 1).getSeq().toString()).compareTo(menus.get(j).getSeq()) > 0) {
  menu = allTree.get(j - 1);
  menus.set((j - 1), menus.get(j));
  menus.set(j, menu);
   }
    }
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 微信小程序之搜索分页功能的实现代码

    微信小程序之搜索分页功能的实现代码

    这篇文章主要介绍了微信小程序之搜索分页功能的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • m1 Mac设置多jdk版本并动态切换的实现

    m1 Mac设置多jdk版本并动态切换的实现

    本文主要介绍 Mac 下如何安装 JDK 并且多版本如何切换,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Spring Cloud Feign 自定义配置(重试、拦截与错误码处理) 代码实践

    Spring Cloud Feign 自定义配置(重试、拦截与错误码处理) 代码实践

    这篇文章主要介绍了Spring Cloud Feign 自定义配置(重试、拦截与错误码处理) 实践,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • java实现上传网络图片到微信临时素材

    java实现上传网络图片到微信临时素材

    这篇文章主要为大家详细介绍了java实现上传网络图片到微信临时素材,网络图片上传到微信服务器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • java数据结构与算法之马踏棋盘

    java数据结构与算法之马踏棋盘

    这篇文章主要为大家详细介绍了java数据结构与算法之马踏棋盘,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Java实现两人五子棋游戏(四) 落子动作的实现

    Java实现两人五子棋游戏(四) 落子动作的实现

    这篇文章主要为大家详细介绍了Java实现两人五子棋游戏,落子动作的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • java如何遍历对象中的所有属性(字段)和类型

    java如何遍历对象中的所有属性(字段)和类型

    这篇文章主要介绍了java如何遍历对象中的所有属性(字段)和类型问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • java实现动态代理示例分享

    java实现动态代理示例分享

    动态代理作为代理模式的一种扩展形式,广泛应用于框架(尤其是基于AOP的框架)的设计与开发,本文将通过实例来讲解Java动态代理的实现过程。
    2014-03-03
  • Java实现生成自定义时长的静音音频

    Java实现生成自定义时长的静音音频

    这篇文章主要介绍了如何通过Java实现一个音频工具类,可以实现生成一段自定义时长(精确到毫秒)的wav音频。感兴趣的小伙伴可以了解一下
    2022-01-01
  • 2020年支持java8的Java反编译工具汇总(推荐)

    2020年支持java8的Java反编译工具汇总(推荐)

    这篇文章主要介绍了2020年支持java8的Java反编译工具汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06

最新评论