【java performance】如果只是查找单个字符的话,用charAt()代替startsWith()

来源:互联网 发布:java 比特币源代码 编辑:程序博客网 时间:2024/06/17 02:58

用一个字符作为参数调用startsWith()也会工作的很好,但从性能角度上来看,调用用String API无疑是错误的!

        

例子:

public class PCTS {

   private void method(String s) {

       if (s.startsWith("a")) { // violation

           // ...

       }

    }

}

        

更正        

将'startsWith()'替换成'charAt()'.

public class PCTS {

   private void method(String s) {

       if ('a' == s.charAt(0)) {

           // ...

       }

    }

}

        

参考资料:

Dov Bulka, "Java Performance andScalability Volume 1: Server-Side Programming

Techniques"  Addison Wesley, ISBN: 0-201-70429-3

0 0