原版代码是这样:一个For循环,参数为x, 然后循环里面有大量的判断IF x=0时做什么 IF x=1时做什么等等,每次做的事情都不一样。 有没有更好的方式来优化这部分?

解决方案 »

  1.   

    如果参数x的值都为int
    那么可以用
    switch case来代替if
    效率会高很多
      

  2.   

    IF x=0时一个函数
     IF x=1  一个函数
      

  3.   

    swith x 
    {
       case 1:
          ...................
        break;
       case 2:
        break;
    }if(.........)
    {}else if(............)
    {}
      

  4.   

    想办法去了for吧,for里面没什么好优化的
      

  5.   

    switch case首选 
    for循环在LZ的这种情况下其实优化的余地还是比较少的 就算代替if的话性能上也提高不了多少
      

  6.   

    顺便提醒一下,用switch case时是变量一定是int
      

  7.   

    这种情况下,根本没必要用FOR和IF了,把它们“抻直":先写i=0时的代码,直接着写i=1时的代码,依此类推就是了(楼主不说每个都不一样吗,那就等于顺序执行那些代码而已)。
      

  8.   

    楼主用switch case吧9楼说的必须用int是java, javascript字符串也是可以的, 而且case的值可以是变量。