初学者常用编程小技巧

转载微信号:程序人生  2018.9.3-这几个编程小技巧,让你代码效率提升一个档次

大概看了一下这篇文章,没有深究,只能看懂一部分。写在这里以求加深印象。

1.for循环变量初始化

for(int i=0;i<s.length;i++){

    System.out.println(i);

}

上边代码,每次循环都将执行函数length判断一次s的长度,浪费时间。将s.length作为变量定义在循环外,省去判断时间。如下:

int len=s.length;

for(int i=0;i<s.length;i++){
   System.out.println(i);
 }

感想:循环中的部分,尤其是一些判断函数,且固定结果的,都拿到循环外边去。不影响的情况下减少循环体内容。

2.基本运算和函数。

2.1.在(正负都可以)乘以2(或者2的整数次幂)或者除以2(或者2的整数次幂)的时候尽量用位运算代替。直接操作2进制,最快的运算。

      int a=10;  

      System.out.print(a<<2);    //打印结果40;符号左移,低位补0

      System.out.print(a>>2);    //打印结果2;符号右移,低位消失,高位补0

2.2尽量将除法运算转换成乘法运算。比如条件判断时if(a==b/c)替换为if(a*c==b)。除法运算是乘法运算时间的2倍。

2.3.多使用复合运算符+=、-=、*=、/=。以加一为例,效率高低顺序是(i++,i+=1,i=i+1)。

2.4多掌握一些小函数,比如swap、max、min、sort、qsort等。

3.if条件判断

例子:一个班的成绩如下:74,76,81,94,97,68,77,65,54,89.......总共50个数据,要求用程序将分数分为优秀(》=80)、

良好(》=70)、及格(》=60)、不及格(》=0)四个分数段。

for 所有学生分数

if  分数<60,不及格

else if分数<70及格

else if分数<80良好

else 优秀

分析:这个班的大多数成绩为良好和优秀,而这个程序需要三次才能将成绩归为良好,四次优秀,所以绝大多数的成绩,前两个判断没有必要,调整一下判断顺序即可:

for 所有学生分数

if  分数>=80,优秀

else if分数>=70良好

else if分数>=60及格

else 不及格

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值