`
xinyiwust
  • 浏览: 13135 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

边界检查函数checkBounds

    博客分类:
  • java
阅读更多
今天在看java.nio.Buffer的源码时,看到这样一个函数:
    static void checkBounds(int off, int len, int size) { 
        if ((off | len | (off + len) | (size - (off + len))) < 0)
	    throw new IndexOutOfBoundsException();
    }

这是一个边界检查函数,感觉写的非常简洁,只要满足如下条件就抛出IndexOutOfBoundsException:
off<0或者len<0或者off+len超出了Integer的最大值或者size<(off+len)。
以后在检查数组越界的时候可以直接拿来用了。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics