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

免费推广网站平台潍坊建设企业网站

免费推广网站平台,潍坊建设企业网站,如何建设教师网上授课网站,饰品网站设计方案我们一直在使用Google的Guava库做更多的事情-多么出色的库#xff01; 我们用于它的最新内容是为我们的域对象整理比较器。 就是这样。 使用Apache Isis的JDO Objectstore #xff0c;使您的类实现java.lang.Comparable #xff0c;并对集合使用SortedSet是一个好习惯。 您可… 我们一直在使用Google的Guava库做更多的事情-多么出色的库 我们用于它的最新内容是为我们的域对象整理比较器。 就是这样。 使用Apache Isis的JDO Objectstore 使您的类实现java.lang.Comparable 并对集合使用SortedSet是一个好习惯。 您可以在Isis的quickstart原型中看到这一点其中ToDoItem具有递归关系 public class ToDoItem implements ComparableToDoItem {...private SortedSetToDoItem dependencies Sets.newTreeSet();... } 但是如何最好地实现compareTo方法 这是原始的实现 public int compareTo(final ToDoItem other) {if (isComplete() !other.isComplete()) {return 1;}if (!isComplete() other.isComplete()) {return -1;}if (getDueBy() null other.getDueBy() ! null) {return 1;}if (getDueBy() ! null other.getDueBy() null) {return -1;}if (getDueBy() null other.getDueBy() null ||getDueBy().equals(this.getDueBy())) {return getDescription().compareTo(other.getDescription());}return getDueBy().compareTo(getDueBy());} k 基本上说 *在尚未完成的对象之前订购尚未完成的对象 *如果有平局请按截止日期排序最后将没有截止日期的那些放在最后 *如果有领带请按描述排序。 这是使用Guava的Ordering类重写的方法。 首先让我们为标量类型创建一些Ordering实例 public final class Orderings {public static final OrderingBoolean BOOLEAN_NULLS_LAST Ordering.Booleannatural().nullsLast();public static final OrderingLocalDate LOCAL_DATE_NULLS_LAST Ordering.LocalDatenatural().nullsLast();public static final OrderingString STRING_NULLS_LAST Ordering.Stringnatural().nullsLast();private Orderings(){} } 现在我们可以以声明方式重写ToDoItem的compareTo()方法 public class ToDoItem implements Comparable {...public int compareTo(ToDoItem o) {return ORDERING_BY_COMPLETE.compound(ORDERING_BY_DUE_BY).compound(ORDERING_BY_DESCRIPTION).compare(this, o);}public static OrderingToDoItem ORDERING_BY_COMPLETE new OrderingToDoItem(){public int compare(ToDoItem p, ToDoItem q) {return Orderings.BOOLEAN_NULLS_LAST.compare(p.isComplete(), q.isComplete());}};public static OrderingToDoItem ORDERING_BY_DUE_BY new Ordering()ToDoItem{public int compare(ToDoItem p, ToDoItem q) {return Orderings.BOOLEAN_NULLS_LAST.compare(p.getDueBy(), q.getDueBy());}};public static OrderingToDoItem ORDERING_BY_DESCRIPTION new Ordering()ToDoItem{public int compare(ToDoItem p, ToDoItem q) {return Orderings.STRINGS_NULLS_LAST.compare(p.getDescription(), q.getDescription());}}; 现在诚然这几乎不能保证在单个类中仅使用一个方法就可以拥有所有样板。 当然不是 但是我们现在拥有的是一个小代数可以用来在域模型中的所有域类之间进行组合。 使用ToDoItem其他域类可以使用ToDoItem的自然排序从Ordering.natural()访问进行Ordering.natural() 也可以使用各种ToDoItem.ORDERING_BY_xxx排序来创建新的排序。 参考 Dan Haywood博客博客中使用了我们的JCG合作伙伴 Dan Haywood的Google Guava的Ordering API 。 翻译自: https://www.javacodegeeks.com/2013/02/using-google-guavas-ordering-api.html
http://www.zqtcl.cn/news/987236/

相关文章:

  • 网站建设功能分为几种百度搜索数据
  • 电影网站模板html微信开发者代码管理
  • 小程序ui界面设计手机优化大师官网
  • 佳木斯市建设局网站网络游戏名
  • 建筑钢结构网站汉阳网站建设哪家便宜
  • 营销型网站建设评价临湘网站建设
  • 做网站的价格参考巴中建网站的公司
  • 张家口建设网站网络技术工程师
  • 大型网站后台登录地址一般是如何设置的哪里网站用vue.js做的
  • 网页设计规范图标设计百度seo优化多少钱
  • 网站打开速度概念建筑网站知乎
  • 网站的flash怎么做的杭州市城乡建设网官网
  • 宿迁网站建设排名wordpress多站点可视化
  • 苏州好的做网站的公司哪家好前端如何做响应式网站
  • 广州网站建设招标推广方式有哪些渠道
  • 郑州做网站狼牙东莞建设造价信息网站
  • 网站制作代理加盟国内seo服务商
  • 如何在建设银行网站预约纪念币网络销售好不好做
  • 利用淘宝视频服务做视频网站聊城做网站价格
  • 做美容行业的网站哪个好广西互联网企业
  • 做网站平台的营业执照江镇做包子网站
  • 网站建设 摄影服务wordpress破解模板
  • 网站规划中的三种常用类型宁波海曙区建设局网站
  • dede做网站湖北网址大全
  • 如何注册网站的名字html表单制作
  • 中国建设工程协会标准网站什么网站做推广比较好
  • 长沙专业网站建设怎么做关于网站建设的投标书
  • 石家庄公司网站如何制作wordpress 大图 主题
  • 网站建设和管理情况如何传图片做网站
  • 网站建设流量什么意思杭州企业网站设计模板