Java十大简单性能优化( 四 )
带走
在上面的示例中 , 如果您使用显式StringBuilder实例 , 或者您依赖Java编译器为您创建隐式实例 , 则可能完全不相关 。 但是请记住 , 我们在NOPE分支中 。 我们浪费的每个CPU周期都像GC这样愚蠢的事情 , 或者分配StringBuilder的默认容量都是浪费N x O x P时间 。
根据经验 , 请始终使用StringBuilder而不是+运算符 。 如果可以的话StringBuilder , 如果String构建起来比较复杂 , 则可以将引用保留在几种方法中 。 这是jOOQ在生成复杂的SQL语句时所做的 。 只有一个StringBuilder“遍历”您的整个SQLAST(抽象语法树)
为了大声喊叫 , 如果您仍然有StringBuffer参考文献 , 请务必将其替换为StringBuilder 。 您实际上几乎不需要同步正在创建的字符串 。
2.避免使用正则表达式
正则表达式相对便宜且方便 。 但是 , 如果您位于NOPE分支中 , 那么它们将是您最糟糕的事情 。 如果绝对必须在计算密集型代码节中使用正则表达式 , 则至少要缓存该Pattern引用 , 而不要一直重新编译它:
推荐阅读
- 三国杀|三国杀:谁是技能最简单的武将,返璞归真,这就是武将基本元素!
- ag战队|关键的卡位赛,AG超玩会却上了猫神,原因很简单,但是却很心酸
- ps3|魔兽怀旧服:专业打“补丁”的装备,虽然获取简单,但能弥补短处
- 地下城堡|LOL手游上分总结,中单最简单上单没人帮,快手投大钱招新主播
- |《英雄联盟手游》当前版本最强上分英雄公布,阿克尚最强团战“利器”,上分很简单
- 黄忠|五个能秒坦克的射手,香香仅排第五,榜首瞬秒脆皮太简单
- 显卡|游戏盘点:十大最费显卡的PC单机大作,需要配置过硬的电脑才能玩
- 炸弹人|英雄联盟手游:炸弹人+石头人走下,简单又强力啊
- 貂蝉|高难度英雄等于高操作英雄?非也,有些英雄简单,但你却玩不好
- 原神|原神:新深渊出炉后,钟离最终还是倒了?削弱一个角色太简单了