写点什么

JDK 7:java.util.Objects 中应该包含哪些常用方法呢?

  • 2009-09-14
  • 本文字数:580 字

    阅读完需:约 2 分钟

为了对即将到来的 JDK 7 新类 java.util.Objects 做准备,来自 Sun 的 Joe Darcy 向 OpenJDK core-libs-dev 团队咨询该类中应该包含哪些方法。借此机会,InfoQ 向广大的 Java 社区征求意见。

在最初的提案中,Darcy 谈到了该类中需要包含的几个方法:

  • 一个空安全(null-safe)的 equals(arg1, arg2) 方法,如果两个参数都为 null 返回 true,如果只有一个为 null 返回 false,其他情况则调用 arg1.equals(arg2)
  • 一套针对所有原生类型(int、long 等)的 compareTo(arg1, arg2) 方法

Andrew John Hughes 也给出了自己的一些看法

  • toString(arg),通过反射将对象中的所有属性都写到返回的输出字符串中
  • 对 clone() 方法的一个辅助实现

Martin Buchholz 还提出一个空安全的 hashCode() 实现,对于值为 null 的对象该方法返回 0。

Stephen Colebourne 专门为该类创建了一个长长的推荐方法列表,这些方法大多都是从 Apache Commons Lang 程序库中摘取出来的。比如:

  • min(comparable1, comparable2) 与 max(comparable1, comparable2),这两个方法都是空安全的方法,返回最小 / 最大的非空对象(如果两个参数都为 null 则返回 null)
  • defaultNull(obj, defaultValue),如果 obj 为 null 则返回 defaultValue 对象

您有什么高见呢?java.util.Objects 中应该包含哪些方法呢?

查看英文原文: JDK 7: What Frequently Rewritten Methods Should be Included in java.util.Objects?

2009-09-14 23:012647
用户头像

发布了 88 篇内容, 共 272.8 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

游戏部署换新季,华为云618营销季助力游戏企业闯关升级

YG科技

线性稳压器LDO的基础知识

芯动大师

芯片 LDO 电源

Forklift Mac破解版 一款强大的文件管理程序

Rose

Pixelmator Pro for Mac v3.6.4中文激活版 媲美PS的修图软件

Rose

4K Video Downloader Plus Pro for mac 4K视频下载器

Rose

Mac电脑FTP客户端推荐:Transmit 5 for Mac 中文版

你的猪会飞吗

mac软件下载

3CX的内容介绍

cts喜友科技

通信 通讯 云通讯

AI大佬都在说下一个爆点是智能体,建议开发者抢占先机!

AI浩

智能体

云电竞平台测评

Yan-英杰

直播预告丨华为数字化转型解决方案,助力钢铁行业飞越“寒冬”!

YG科技

Java实现基于ArrayList的生产者/消费者

极客罗杰

FabFilter Total Bundle 2024 Mac音频插件合集 v2024.05.30直装激活版

Rose

多媒体下载和转换工具Allavsoft

Rose

SiteSucker for mac 允许用户下载整个网站以供离线浏览

Rose

Music Tag Editor Mac版:音频标签管理工具

Rose

AIGC在保险场景中的视觉应用

京东科技开发者

Karmada v1.10发布,新增多集群声明式负载重平衡

华为云开发者联盟

开源 云原生 华为云 华为云开发者联盟 企业号2024年6月PK榜

【程序设计】做一个发送系统邮件的功能,如何设计数据表?

靠谱的程序员

程序设计

Microsoft Remote Desktop for Mac(微软远程连接软件)v10.9.8直装激活版

Rose

最适合ZKsync主网和撸空投的4个钱包推荐,bitget钱包

股市老人

功能强大的数字绘画和照片编辑应用:Artstudio Pro

Rose

Mac用户设计的YouTube视频转音频软件 4K YouTube to MP3 for Mac

Rose

FSNotes for mac 文本处理软件

Rose

借助 NGINX Unit 在服务器端使用 WebAssembly

NGINX开源社区

Web HTTP webassembly Wasm nginx unit

极速查询:StarRocks 存算分离 Compaction 原理 & 调优指南

StarRocks

云计算 大数据 数据仓库 数据湖 湖仓一体

JDK 7:java.util.Objects中应该包含哪些常用方法呢?_Java_Ryan Slobojan_InfoQ精选文章