当前位置: 首页 > news >正文

延长中路上海网站建设门窗企业网站建设

延长中路上海网站建设,门窗企业网站建设,广告公司手机网站建设,微信支付 企业网站在Java 8之前#xff0c;您编写了几行代码来对对象集合进行排序#xff1f; Java 8您需要多少个#xff1f; 您可以在Java 8中用一行完成。 让我们看看下面的Employee类。 public class Employee {private String name;private Integer age;public Employee(String name,… 在Java 8之前您编写了几行代码来对对象集合进行排序 Java 8您需要多少个 您可以在Java 8中用一行完成。 让我们看看下面的Employee类。 public class Employee {private String name;private Integer age;public Employee(String name, Integer age) {super();this.name name;this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age age;}} 使用Collection的sort方法可以对员工列表进行排序。 sort方法期望Comparator作为参数以便比较两个Employee对象。 因此我们的第一个解决方案如下所示。 public class EmployeeComparotor implements Comparator {Overridepublic int compare(Employee e1, Employee e2) {return e1.getAge().compareTo(e2.getAge()); } }employeeList.sort(new EmployeeComparotor()); 无需实现Comparator并实例化它的新实例我们可以使用匿名类来改进程序。 employeeList.sort(new Comparator() {Overridepublic int compare(Employee e1, Employee e2) {return e1.getAge().compareTo(e2.getAge()); } }); 现在让我们看看如何通过使用Java 8功能来进一步改进此代码以减少冗长的内容。 Java 8引入了lambda表达式该表达式允许我们将代码传递给方法。 Lambda表达式可以传递给需要功能接口的方法。 功能接口是仅定义一种抽象方法的接口。 在Java 8中比较器是一个功能接口。 Collection的sort方法期望Comparator作为参数该参数接受功能接口。 在这种情况下比较器表示BiFunction的描述符。 BiFunction是Java 8中的功能接口。因此您可以按以下方式将lambda表达式传递给sort方法。 为了按年龄对员工列表进行排序您需要如下一行。 employeeList.sort((Employee e1, Employee e2) - e1.getAge().compareTo(e2.getAge())); Java编译器可以通过使用lambda出现的上下文来推断lambda表达式的参数类型。 因此您可以删除参数的类型并按如下所示重写代码。 employeeList.sort((e1, e2) - e1.getAge().compareTo(e2.getAge())); 让我们尝试进一步减少代码。 Java 8 Comparator具有一个称为compare的静态方法该方法接受一个Function作为参数。 此函数应提取排序键并产生一个Comparator对象。 因此对Java 8中的对象列表进行排序的最短代码是 employeeList.sort(comparing((e) - e1.getAge())); 代替使用lambda表达式我们可以使用方法引用来使我们的代码稍微冗长一些。 employeeList.sort(comparing(Employee::getAge)); 如果要按年龄降序对员工列表进行排序则可以使用接口的reversed默认方法。 employeeList.sort(comparing(Employee::getAge).reversed()); 现在让我们看一下您要按年龄对员工进行排序然后再按年龄对类似年龄的员工进行排序。 只是提醒一下您是如何进行Java早期版本的。 在Java 8中您只需使用thenComparing方法即可。 employeeList.sort(comparing(Employee::getAge).thenComparing(Employee::getName));翻译自: https://www.javacodegeeks.com/2018/06/sort-collection-objects-java8.html
http://www.huolong8.cn/news/301984/

相关文章:

  • 留电话的广告网站网站建设必须注意的事项
  • 专业的门户网站建设局域网建设网站视频教程
  • 百度下拉框推广网站销售型企业网站建设应遵守的原则
  • 淮安市哪里可以做网站手机网站宽度多少合适
  • 城市建设网站调查问卷相城苏州网站建设
  • 周年庆网站要怎么做6阿里云备案 网站备案域名
  • 美妆网站设计模板网站开发语言占有率
  • 关键词分析工具网站优化策略
  • 苏州工程网站建设做视频推广有哪几个网站
  • 对话弹窗在网站上浮动用ps做衣服网站首页
  • 站长工具问答网站怎么看一个网站是用模板什么做的
  • 无锡找做网站建立数据库连接时出错wordpress
  • 建筑网站设计模版男人女人做那个网站
  • 公司在选择网站时应考虑什么软件生成器
  • 义乌做网站哪家好网站开发技术期中试题
  • 嘉兴网站建设方案优化dede网站模板下载
  • 网站建设价格与哪些江象网站建设
  • 误入网站退不了怎么做手机界面设计
  • 网站建设策划范文顾问
  • 网站开发 前台代码学前端有必要找培训机构吗
  • 侨联 文化宣传 侨联网站建设在哪个网站上找国外客户做外贸
  • 长春市建设信息网站化妆品网站建设公司
  • 创新网站内容建设网站建设制作设计开发
  • python做网站怎么样wordpress 批量添加用户权限
  • 网站主办者是谁seo技术顾问
  • 成都建设网站的公司合肥网站建设市场
  • 营销型网站是什么意思企业注册地址查询
  • 响应式 购物网站模板福州网站建设出格
  • 公司网站制作费用多少现在建网站还能赚钱吗
  • 谷歌网站开发用什么框架做简约头像网站