2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

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

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

关注

评论

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

大语言模型的上下文窗口 (Context Windows)

澳鹏Appen

文本生成 LLM 大语言模型

剖析——陪玩源码,陪玩平台搭建的各种必备功能与收益来源,游戏陪玩系统源码

DUOKE七七

php 开源 uniapp 陪玩系统源码

Gate.io 平台通证 GT:持续赋能与销毁、财富效应显著

股市老人

探索Flink动态CEP:杭州银行的实战案例

Apache Flink

大数据 flink 数据分析 CEP 实时处理

性能优化!突破性能瓶颈的尖兵CPU Cache

不在线第一只蜗牛

性能优化

全新红娘交友系统定制版源码| 相亲交友小程序源码全开源可二开_

DUOKE七七

php 开源 uniapp

部署有声读物和播客的自托管媒体服务器Audiobookshelf

轶天下事

向量更新的3种方式

DashVector

人工智能 数据库 大模型

如何找到可靠的海外云服务器租用商

Ogcloud

云服务器 香港云服务器 美国云服务器 海外云服务器 云服务器租用

三面滴滴失败,总结了Java面试题,有几个题还是一直搞不懂

Summer

Java 程序员 面试 架构师 大厂

阿里发布多模态推理模型 QVQ-72B,视觉、语言能力双提升;OpenAI 正在研发人形机器人丨 RTE 开发者日报

声网

出海电商如何解决网络问题

Ogcloud

SD-WAN 跨境电商网络 外贸网络 SD-WAN国际专线 国际网络专线

阿里大佬翻遍全网Java面试文章,总结出这份1658页文档,GitHub收获25K+点赞

Summer

Java 程序员 面试 架构师 大厂

华为阅读年度榜单揭晓:汇聚精品内容,打造沉浸式阅读盛宴

最新动态

华为云Flexus X实例使用教学——完整的配置选择与实操步骤讲解

轶天下事

指标管理+AI大模型深度融合,开启智能数据分析管理新时代

袋鼠云数栈

聚力创新|首届BIOV生命科技与再生医疗国际峰会在泰国曼谷圆满举行

TechubNews

2024年OpenTiny年度人气贡献者评选正式开始

OpenTiny社区

开源 前端 OpenTiny

华为ensp--BGP路由黑洞

阿落ovo

Flexus云服务器X实例赋能,用Python将微信公众号秒变智能聊天机器人

轶天下事

优化大宽表查询性能,揭秘GaussDB(DWS) 谓词列analyze

华为云开发者联盟

GaussDB #数据库 analyze

ByConity BSP 解锁数据仓库新未来

网罗开发

YOLOv5 的量化流程及部署方法

地平线开发者

自动驾驶 算法 地平线征程5 地平线征程6

2024数据库编程大赛-八强决赛成绩揭晓

NineData

Doris NineData 第二届数据库编程大赛

向量检索的3种方式

DashVector

人工智能 数据库 向量检索 大模型

轻至986g,续航18小时、120TOPS算力!ThinkPad X1 Carbon Aura AI元启版刷新商务AI PC巅峰体验

科技范儿

Altair RapidMiner 解锁更高级别的功能,支持用户无缝构建和部署高级 AI agent

Altair RapidMiner

机器学习 #人工智能 altair #数据分析 RapidMiner

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