首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

判断双数几种方法性能

2012-11-10 
判断偶数几种方法性能?判断一个数是否偶数,在编程中经常用的,大部分人都用的是 i%20 来判断吧。?以下几种

判断偶数几种方法性能

?

判断一个数是否偶数,在编程中经常用的,大部分人都用的是 i%2==0 来判断吧。

?

以下几种方式

1: (i%2)==0

?

2:? (i&0x01)==0

?

3:? (i<<31)==0

?

4:? (i&1)==0

?

?

有次一个群聊着1~10000 的含1的偶数个数 求解

特地写了一小段 分别用以上几种方式测试了下

?

int len = 0;long t1 = System.currentTimeMillis();for(int i=0;i<100000000;i++){if((i%2)==0){String s = i+"";if(s.indexOf("1")!=-1)len++;}}long t2 = System.currentTimeMillis()-t1;System.out.println("count-->"+len);System.out.println("date-->"+t2);

?由于10000 各种测试差距不大,我调整到1亿

以下分别是t2的结果:

1:13344?????ms

2:12172???? ms?

3:12063???? ms?

4:12016???? ms?

?

同一台机做测试的,由于各自的硬件不等,以上时间也不等,大家有兴趣可以自己测试下。

?

网路上还有种写法 我没测试成功 (i^1)?=i? , 大家有兴趣可以自己测试下。

热点排行