返回布尔值的 Java 方法的命名约定

2024-01-02

我喜欢在其他语言中的方法/函数名称末尾使用问号。 Java 不允许我这样做。作为解决方法,我还能如何在 Java 中命名返回布尔值的方法?使用is, has, should, can在某些情况下,在方法前面听起来不错。有没有更好的方法来命名这些方法?

例如创建新快照?


惯例是以名义提出问题。

以下是 JDK 中可以找到的一些示例:

isEmpty()

hasChildren()

这样,名字读起来就像末尾有一个问号一样。

集合是空的吗?
这个节点有孩子吗?

进而,true意味着是,并且false意思是不。

或者,您可以将其视为断言:

该集合是空的。
该节点有子节点

Note:
有时你可能想命名一个方法,比如createFreshSnapshot?。如果没有问号,该名称意味着该方法应该创建快照,而不是检查是否需要快照。

在这种情况下,您应该重新考虑您实际要问的内容。就像是isSnapshotExpired是一个更好的名称,并且传达了该方法在调用时会告诉您的内容。遵循这样的模式还可以帮助您保持更多功能的纯净且没有副作用。

如果你做一个 for isEmpty()在 Java API 中,您会得到很多结果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

返回布尔值的 Java 方法的命名约定 的相关文章

  • 如果我在 JSP 中有 html 元素,那么执行顺序是什么?

    什么将执行第一个 body 元素或 head 元素 Head Body scriplet 如果我明白您的要求 JSP 文件中的每个元素都会按照代码从上到下出现的顺序进行处理
  • 协助持续进行 Java 到 C# 转换的工具

    如今 许多项目都是用 Java 编写的 其中一些最终转换为 C 以合并到 NET 中 我想到的例子有 log4net nhibernate 和 db4o 包括 Sharpen db4o 的工具 在内 您是否见过和 或使用过任何使连续转换变得
  • 继续使用 sketch.js 编辑草图图像 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在使用 sketch js 中的示例 http intridea github io sketch js http intridea g
  • 为什么从 Eclipse 导出的可运行 JAR 不起作用?

    我有一个在 Eclipse 中运行良好的项目 但是 当我将其导出到可运行的 JAR 其中包含依赖项 时 它不会运行 从控制台运行 JAR 时出现的错误是 编辑 之前没有使用 jar 运行它 INFO Loading XML bean def
  • Powermockito 可以在非最终具体类中模拟最终方法吗?

    假设我有一个非最终具体类 具有如下所示的最终方法 public class ABC public final String myMethod return test test 可以嘲笑吗myMethod 调用时返回其他内容junit usi
  • 从 HashMap 条目列表中删除重复项

    我有一个List
  • Java 内存错误:无法创建新的本机线程

    运行 java 服务器时 我在 UNIX 服务器上收到此错误 Exception in thread Thread 0 java lang OutOfMemoryError unable to create new native threa
  • 如何暂停程序直到按下按钮?

    我使用从 jframe 扩展的类 它有一个按钮 我在程序中使用它 我希望当在我的程序中运行 jframe 时我的整个程序暂停 直到我按下按钮 我该怎么做 in c getch 做这个 我想要一个这样的功能 通过睡眠暂停执行 http dow
  • Hazelcast Jet 变更数据捕获

    我在我的应用程序中使用 Hazelcast 更改数据捕获 CDC 我使用 CDC 的原因是 如果使用 jdbc 或其他替代功能将数据加载到缓存中 会花费大量时间 所以CDC将在数据库和 Hazelcast Jet 之间进行数据同步 Stre
  • 在 Android 上解析 RSS

    我有几个 RSS 源需要为我的应用程序进行解析 我按照这里的优秀教程进行操作 http w2davids wordpress com android rssatom feeds parsing with rome http w2davids
  • Java 会话变量

    我听说有些人认为在会话中将信息存储在服务器上是一个坏主意 因为它不安全 因此 在多页面业务流程功能中 应用程序将数据写入数据库 然后在需要时检索信息 在会话中存储私人信息是否一定不安全 只要会话本身安全 在会话中存储属性就不存在安全风险劫持
  • 如何更改使用 Google ReCaptcha 版本 2 时的错误消息?

    当为 Google ReCaptcha 版本 2 选择多张照片时 会显示以下错误消息 需要多个正确的解决方案 请解决更多 如何将错误消息更改为我网站上的自定义消息 这是图像 我认为不可能在服务器端 在谷歌 进行 这可以在客户端通过利用 js
  • java代码的等效vb代码

    谁能告诉我这段Java代码到底做了什么 SecureRandom random SecureRandom getInstance SHA1PRNG byte bytes new byte 20 synchronized random ran
  • 使用 spring mvc 的多个域

    假设我有一个应用程序必须缩短 URL 但还要执行其他操作 喜欢google com and goo gl or facebook com and fb me 部署两个应用程序很容易 但 目前 仅部署一个应用程序更简单 使用 spring 和
  • 选择活动时运行时崩溃

    首先我想说我几乎没有 Android 经验 这是我在 Android 中的第一个项目 而且我的老师不太擅长教学 所以我对任何过度的无知表示歉意 在进一步讨论之前先解释一下 我的应用程序的目标本质上是能够记录您在某些活动上花费了多少时间 记录
  • 如何列出所有已加载的 Spring bean 定义文件

    在大型企业系统中 并不总是清楚在 ApplicationContext 构建期间导入了哪些文件 有没有办法列出过程中加载的所有文件 我知道如何列出加载的属性文件 但不知道导入的 bean 文件 更新示例 文件 1 applicationCo
  • 为什么我得到:没有有效的 JFX 运行时

    我有一个使用 java 1 6 编译并使用 jnlp webstart 运行的现有应用程序 如果我使用 JRE 1 6 从客户端运行此应用程序 一切都会很好 但是 当我使用 java JDK 7 编译代码并使用 JRE 1 7 67 运行客
  • 是否可以从外部闪存驱动器运行 java (jdk-windows)、Eclipse (indigo) 和 Android-sdk 进行 Android 应用程序开发

    我想知道我们是否可以通过在外部闪存驱动器上保存所需的软件来在我们使用的任何计算机上开发我们的android应用程序 我的意思是在闪存驱动器上安装java eclipse和android sdk 所以最后我们可以将闪存带到任何地方计算机并在任
  • Mac 上的 JavaFX WebView 字体问题

    有些网站显示乱码而不是正确的文本 它只发生在 Mac 上 For example with GMapsFX 可能与 OS X 10 11 或 10 12 有关 我用Java 1 8 0 121测试了它 此问题有任何修复或解决方法吗 就我而言
  • 应用服务器如何注入私有字段?

    我看到这个问题 注入私有 包或公共字段或提供 setter https stackoverflow com questions 2021716 inject into private package or public field or p

随机推荐

  • PHP 还是普通 Perl CGI 更快?

    我正在为 Apache 共享托管服务器开发一个 Web 应用程序 我已经用 Perl 编写了一些代码 但最近令我惊讶的是 我发现共享托管提供商没有提供 mod perl 或安装它的方法 我一直有点担心在没有 mod perl 的情况下通过
  • py.test 将消息和测试结果/断言记录到单个文件中

    我现在开始使用 py test 来开发一个新项目 我们正在配置 Linux 服务器 我需要编写一个脚本来检查这些服务器的设置和配置 我认为 py test 是实现这些测试的好方法 并且到目前为止它运行得很好 我现在面临的问题是 我需要在这些
  • 为什么保存到名为 temp 的文件夹会导致 Matlab 中 for 循环中的数据加载速度变慢?

    重要更新 我刚刚发现 重新启动 Matlab 和计算机后 这个简化的代码也不再为我重现问题 我很抱歉占用您的时间在一个不起作用的脚本上 但是 如果我在内部 for 循环中的任何文件夹 我已经尝试过 中保存任何内容 老问题仍然存在于我的原始脚
  • 返回时重新加载 UITableView?

    我有顶级水平UIViewController其中包含一个UITableView 顶层UIViewController实例化一个NavigationController 并推动另一个UIViewController到NavigationCon
  • 识别上下文菜单中选择的视图 (Android)

    在安卓中 onContextItemSelected有一个MenuItem参数 因此不清楚如何识别所选视图 MenuItem getMenuInfo http developer android com reference android
  • pip:强制安装忽略依赖项

    有没有办法强制安装 pip python 包 忽略所有无法满足的依赖项 我不在乎这样做有多么 错误 我只是需要这样做 抛开任何逻辑和推理 点有一个 no dependencies转变 你应该使用它 欲了解更多信息 请运行pip instal
  • 如何在android中的videoview中播放.mp4视频?

    我正在开发视频播放器应用程序 我想播放 mp4本机视频视图中的视频 我无法使用 URL 播放视频 我收到错误 抱歉 这部影片无法播放 而且我也无法在本机视频视图中播放下载的视频 我在视频视图中播放视频的代码 String mUrl http
  • 检测视频是否应用了“faststart”

    在 MP4 上运行 qt faststart 时 您实际上是从后面获取元数据并将其放在文件的前面 就我而言 Flash 可以在视频完全加载之前正确开始播放视频 我有大量视频 我正在通过 shell 脚本运行并连夜进行编码 然而 当我上传时
  • 创建日历以在 Jasper 服务器中选择日期(和时间)

    在此输入图像描述 https i stack imgur com w0sgy png jtsnr 来自 jasper 服务器的快照 我在文本框 Dateto 外部单击 然后显示日历 但如前面的示例所示 框外没有日历图标 此外 文本框接受输入
  • unity 2D 玩家运动参数不存在

    我已经成功制作了一个自上而下的射击游戏 现在我正在研究动画 我已经遵循了 Pixelnest io 的几个教程 但奇怪的是 我收到一个错误 说 参数 moveRight 不存在 unity 中的动画对我来说是全新的 并且一直在尝试尽可能多地
  • NestedScrollview 中的 RecyclerView 替代品

    我有一个具有此层次结构的布局 有时我需要更新我的 recyclerview 元素 但它冻结了主线程 我猜是因为滚动视图需要再次测量它 我真的很想知道我应该怎么做 用layoutinflater 替换recyclerview Recycler
  • 从ios本机代码访问AsyncStorage中存储的数据(目标c)

    我需要从 iOS 本机 Objective C 代码访问存储在 AsyncStorage 中的数据 这是需要同步数据的 而不是将 App 事件发送到 JS 然后将其发送回本机代码 我刚刚遇到了同样的问题 我的解决方案是将代码移至本机侧 On
  • 为什么不按照词法封闭的“define”来实现“let”?

    我已经使用 lisp 家族语言工作了好几年 感觉我对它们有了很好的掌握 我现在正在编写自己的 lisp 当然 这是一种时尚 但几乎完全避免重新实现 Scheme Common Lisp 和朋友使用过的相同模式 我总是觉得奇怪的一件事是所有的
  • 来自数据库的 之间的 PHP eval() 代码

    我希望能够将 PHP 放入数据库并运行它 我必须这样做 因为我将页面布局存储在数据库中 并且每个页面布局彼此不同 但是在某些情况下 我想对某些页面使用动态内容 Assume query from db是从数据库返回的字符串 PHP 应该只
  • NDIS 和微型端口驱动程序

    我正在尝试使用 Visual Studio 2012 中提供的 WDK 工具修改以太网驱动程序 WDK 中提供的示例包括 微型端口适配器 和 NDIS 轻量级过滤器 等 我仍处于驱动程序编写的最初阶段 因此发现很难浏览代码 在 Visual
  • C++11 中的常量表达式中是否允许使用逗号运算符?

    在回答的过程中这个问题关于SO https stackoverflow com questions 16563114 are these null pointers or are they pointers to address 0 165
  • 使用端口 1433 的 Azure 输入端点被阻止?

    我正在运行一个 Windows Azure 辅助角色 该角色在端口 1433 上公开 WCF 服务 该端口也被定义为输入 TCP 端点
  • 自 SonarQube 5.2 起,批处理端不再支持任务

    我安装 SonarQube 5 2 和 Sonar runner 2 4 最新版本 我设法启动 SonarQube 但在尝试运行 Sonar runner 时出现以下错误 ERROR Unable to execute Sonar ERRO
  • 在devise 2.0中使用omniauth从facebook获取用户个人资料大图片

    我想从 Facebook 获取用户个人资料大图或普通图片 现在我使用以下代码从用户个人资料图片中获取方形版本 image gt access token info image http graph facebook com id pictu
  • 返回布尔值的 Java 方法的命名约定

    我喜欢在其他语言中的方法 函数名称末尾使用问号 Java 不允许我这样做 作为解决方法 我还能如何在 Java 中命名返回布尔值的方法 使用is has should can在某些情况下 在方法前面听起来不错 有没有更好的方法来命名这些方法