java – 测试indexOf返回值的最佳实践

前端之家收集整理的这篇文章主要介绍了java – 测试indexOf返回值的最佳实践前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在测试indexOf的返回值时,您通常会写什么?
if str.indexOf("a") < 0

VS

if str.indexOf("a") == -1

一种方法比另一种方法更受欢迎吗?

我实际上是为任何语言中的任何函数提出这个问题,在错误时返回-1.

我通常更喜欢< 0方法,因为如果函数扩展为在某些其他情况下返回-2,代码仍然可以工作. 但是,我注意到== -1方法更常用.有原因吗?

解决方法

我尝试实现一般原则,即“错误条件”的测试应该尽可能宽.因此我会使用< 0而不是== -1. 这是我在CS学位期间在正式方法课程中教授的原则. 一个简单的如果它没关系太多,但是在循环中,检测任何“超出范围”条件以确保循环终止是重要的,并且不要假设将完全命中循环终止值. 以此为例:
i = 0;
while (i < 10) {
    ++i;
    // something else increments i
}

V.S.

i = 0;
while (i != 10) {
    ++i;
    // something else increments i
}

后一种情况可能会失败 – 前一种情况不会.

原文链接:https://www.f2er.com/java/129524.html

猜你在找的Java相关文章