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

网站建设的讲话稿网站服务器多少钱一年

网站建设的讲话稿,网站服务器多少钱一年,四川seo快速排名,欧美网站设计风格问题引出 起初#xff0c;写了一行排序代码#xff0c;空指针异常。有判空思想但对nullsLast理解是错误的#xff0c;于是阅读了一下相关源码。 result.sort(Comparator.nullsLast(Comparator.comparing(StationPointDataZoneVO::getDv)));以下写法是正确的#xff1a; …问题引出 起初写了一行排序代码空指针异常。有判空思想但对nullsLast理解是错误的于是阅读了一下相关源码。 result.sort(Comparator.nullsLast(Comparator.comparing(StationPointDataZoneVO::getDv)));以下写法是正确的 result.sort(Comparator.comparing(StationPointDataZoneVO::getDv, Comparator.nullsFirst(Comparator.comparing(Function.identity()))).reversed());接下来以Comparator 接口为引探究一下比较器各个方法的正确用法。 Comparator.comparing 有两个核心方法 public static T, U ComparatorT comparing(Function? super T, ? extends U keyExtractor,Comparator? super U keyComparator) {Objects.requireNonNull(keyExtractor);Objects.requireNonNull(keyComparator);return (ComparatorT Serializable)(c1, c2) - keyComparator.compare(keyExtractor.apply(c1),keyExtractor.apply(c2)); }public static T, U extends Comparable? super U ComparatorT comparing(Function? super T, ? extends U keyExtractor) {Objects.requireNonNull(keyExtractor);return (ComparatorT Serializable)(c1, c2) - keyExtractor.apply(c1).compareTo(keyExtractor.apply(c2)); }先说下面一个传入一个取值函数一般情况是以某字段为依据给对象排序如 StationPointDataZoneVO::getDv。比较自身 Function.identity() 即可。返回一个Comparator接口的具体实现需要注意的是比较器最终调用的方法是实现了Comparable接口的某个对象的compareTo方法。 第一个方法传入两个参数一个取值函数一个比较器。最终调用比较器的compare方法。 以下写法效果一样同样使用某对象自己实现的compareTo方法。 result.sort(Comparator.comparing(StationPointDataZoneVO::getDv)); result.sort(Comparator.comparing(StationPointDataZoneVO::getDv, Comparator.comparing(Function.identity()))); result.sort(Comparator.comparing(StationPointDataZoneVO::getDv, Comparator.naturalOrder()));Comparator.thenComparing thenComparing有好几个方法本质都调用的这个。 default ComparatorT thenComparing(Comparator? super T other) {Objects.requireNonNull(other);return (ComparatorT Serializable) (c1, c2) - {int res compare(c1, c2);return (res ! 0) ? res : other.compare(c1, c2);}; }不难看懂就是上一个比较器结果相等时调用下一个比较器可以嵌套很多层。 Comparator.naturalOrder nullsFirst nullsLast 这三个有一个共同特点返回 Comparators类中的某个比较器实例。 NaturalOrderComparator enum NaturalOrderComparator implements ComparatorComparableObject {INSTANCE;Overridepublic int compare(ComparableObject c1, ComparableObject c2) {return c1.compareTo(c2);}Overridepublic ComparatorComparableObject reversed() {return Comparator.reverseOrder();}}NullComparator 构造器和核心方法 NullComparator(boolean nullFirst, Comparator? super T real) {this.nullFirst nullFirst;this.real (ComparatorT) real; }Override public int compare(T a, T b) {if (a null) {return (b null) ? 0 : (nullFirst ? -1 : 1);} else if (b null) {return nullFirst ? 1: -1;} else {return (real null) ? 0 : real.compare(a, b);} }回到开篇的问题为何会报空指针就不难理解 进入到NullComparator的compare后a和b其实是StationPointDataZoneVO对象它确实不为null。于是调用传入的比较器的compare方法最终调用到的是 (StationPointDataZoneVO::getDv).compareTo(StationPointDataZoneVO::getDv). dv取值为null于是空指针。 Comparator.reversed reverseOrder 此时牵扯进来了另一个类Collections。 reversed 和reverseOrder分别返回Collections定义的ReverseComparator2比较器和ReverseComparator比较器。 这两个比较器的区别是前者用传入的比较器做翻转比较即compare方法参数翻转 public int compare(T t1, T t2) {return cmp.compare(t2, t1); }后者直接翻转调用compareTo public int compare(ComparableObject c1, ComparableObject c2) {return c2.compareTo(c1); }Comparators 此类用于支持Comparator接口提供两个比较器NaturalOrderComparatorNullComparator Collections 也提供了两个比较器ReverseComparatorReverseComparator2
http://wiki.neutronadmin.com/news/179561/

相关文章:

  • 前端是做网站吗wordpress WP-Wiki
  • 兰州企业网站制作网站上面的内容里面放照片怎么做的
  • 免费网站在线观看人数在哪wordpress 发布慢
  • 制作网页与网站开发网站视频怎么做的好处
  • wordpress 社交网站吗2018建设一个网站需要什么
  • dw做的网站建筑工程信息网站
  • 公司门户网站是什么手机和电脑网站分开做
  • 临沂专业网站建设设计公司智慧团建网站登录密码
  • 网站怎么做友链为什么搜索不到刚做的网站
  • 江西省城乡建设培训中心网站温州网站建设设计
  • 深圳住房和建设局网站全景看房信盈达嵌入式培训多少钱
  • 影视视频网站怎么做网站建设报价
  • 电子邮箱网站注册哈尔滨市公共资源交易中心
  • 风中有朵雨做的云电影网站网站建设工程师职责说明书
  • 郑州网站模板1核2g 做网站
  • 网站建设的公河南省今天刚刚人事调整最新
  • 网站子站建设中国建设行业峰会网站
  • 移动商务网站开发课程山西利用模板建站
  • 济南国迅网站建设公司怎么样百度网站优化
  • 福建省闽侯县建设局网站制造业小程序网站开发
  • 企业网站推广方案wordpress客户端 接口
  • 百度网站收录提交入口在哪photoshop基础入门教程
  • 营销型公司网站如何帮人做网站赚钱
  • 建立网站的流程网页特效源码网站
  • 惠州住房和建设局网站房地产怎么做网站推广
  • 吉祥物设计网站wordpress站点目录
  • wordpress多站点不同主题新媒体seo培训
  • 孝感网站开发优搏好免费微信快速开发平台
  • 网站运营和维护都是干什么的外贸英文网站搭建的公司
  • 企业营销网站建设公司哪家好wordpress汉字注册