QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

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:012554
用户头像

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

关注

评论

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

230页,看完之后你就会知道,原来Redis还能这么玩!

Java架构师迁哥

【最不佳实践】Serverless应用优化四则

刘宇

Serverless 优化

防火墙 Keepalived 异常双活恢复后部分外网访问中断问题分析

Qunar技术沙龙

运维 防火墙 网络 故障诊断 keep-alive

Hologres揭秘:深度解析高效率分布式查询引擎

阿里云大数据AI技术

graphql计算指令之@filter:查询中实现集合过滤

杜艮魁

开源 后端 低代码 graphql

15个经典面试问题,酸!校招进字节跳动

Java 程序员 后端

IBM大面积辞退40岁+的员工,瞧一瞧

Java 程序员 后端

带你使用FFMPEG将MP4视频文件转换为GIF

hanaper

面试官:你了解JVM的锁优化吗?

百度开发者中心

Java 最佳实践 方法论 语言 & 开发

2021Java春招面试真题详解,Git-如何优雅地回退代码

策划Java工程师

Java 程序员 后端

2021BTAJ面试真题详解,16条代码规范建议,快看看自己做到没

Java 程序员 后端

Java入门你值得拥有!浅谈Facade外观模式

Java 程序员 后端

2021Java面经:Android屏幕适配-重点盘点

策划Java工程师

Java 程序员 后端

2021年Java知识体系总结,部门老大:redis-分布式锁再这么用

策划Java工程师

Java 程序员 后端

2021年五面蚂蚁,从单体到分布式,必须解决的四个问题

策划Java工程师

Java 程序员 后端

2021最新Java面试真题解析!1

策划Java工程师

Java 程序员 后端

2021程序员进阶宝典!《零基础(1)

策划Java工程师

Java 程序员 后端

graphql计算指令之@sortBy:查询中实现列表字段排序

杜艮魁

开源 后端 低代码 graphql

Python代码阅读(第2篇):数字转化成列表

Felix

Python 编程 Code Programing 阅读代码

2021Java大厂面试集合,java多线程

策划Java工程师

Java 程序员 后端

解决方案|在线自习室

anyRTC开发者

音视频 在线教育 RTC RTM

Selenium 4以后,再不相见的API

FunTester

自动化 API selenium

3个月学会Java开发!Git-如何优雅地回退代码(1)

Java 程序员 后端

5分钟搞定!从Java底层分析多线程行为

Java 程序员 后端

80后程序员感慨中年危机,如何设计一个优雅的RESTFUL的接口

Java 程序员 后端

从河南暴雨、疫情反弹看区块链“灾疫”治理

CECBC

2021Java笔试题总结!Java个人学习之旅(第十天)

策划Java工程师

Java 程序员 后端

Java入门你值得拥有!天天都是面对对象编程,你真的了解你的对象吗

Java 程序员 后端

Java入门视频教程!Kotlin(2)-泛型与集合

Java 程序员 后端

2021年Java开发实战!仿微信的网络聊天室项目开发【完整源码讲解

策划Java工程师

Java 程序员 后端

2021金三银四,开发者进阿里必看的30道经典数据库面试题【附详细解析

策划Java工程师

Java 程序员 后端

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