今天,不小心看到一段代码,因之前优化过类似的问题。但是这种问题一而再再而三出现,真心觉得码农,也不是谁都能当好的。细节决定成败,做事情的风格,真真的会阻碍一个人的发展。
废话不多说,直接上代码:
//不友好使用方式 if(jedis.exists(key)){ String value = jedis.get(key); do("目标代码1"); //…… }else{ do("目标代码2"); //…… } //友好使用方式 String value = jedis.get(key); if(value!=null){ do("目标代码1"); //…… }else{ do("目标代码2"); //…… }
不友好的方式,分别要与redis进行两次网络通信,而友好的方式只有一次。性能提升一倍。
结论:大多数的情况下,我们都是不需要exists的。使用exists的场景,只能用在就单单判断key是否存在,无需后续操作redis的情况,才是最合适。
同样是if else,但有的人在if迷失,有的人则在else中找到出口。