如何大于/小于内部工作
如果我将5与100 vs 5与2,147,483,647(Integer.MAX_VALUE)进行比较,将会有多少性能受欢迎
5 < 100 and 5 < Integer.MAX_VALUE
我问这个问题,因为在某些代码中,当数据不存在时,返回= Integer.MAX_VALUE,即使等级大于100,我们也会丢弃数据,如果我返回101而不是Integer.MAX_VALUE的。我收到了数百万条记录的文件,我必须为每条记录进行这种比较。
答案 0 :(得分:5)
如果我将5与100和5与2,147,483,647
进行比较,那将会有多大的性能
在我熟悉的所有32位和64位硬件架构上,两次比较将花费相同的时间。
提高性能的方法是关注您所做的比较次数(更一般地说,算法必须执行的工作量)。
答案 1 :(得分:3)
只要数量很小(IE,而不是64位),应该没有任何区别。如果您比较64位数字,64位只会产生影响。这通常是我熟悉的任何CPU中的单个周期(或固定数量的小周期)请求。但是,抛出异常或类似的东西可能是个好主意,而不是将数字设置为预定义的范围。