避免對boolean類型的判定
反例:
1 | if("a".equles("a")==true)`{ |
正例:
1 | if(Objects.equles("a","a"))`{ |
**多用條件判斷符 **
反例:
1 | if(a<0)`{ |
a<0?0:1;
1 |
|
if(!a<0)`{
return 0;
}else{
return 1;
}
1 | 正例: |
if(a>=0)`{
return 0;
}else{
return 1;
}
1 |
|
“abc”+“d”;
1 | 正例: |
“abc”+‘d’;
1 | **大量字符串拼接時使用StringBuffer代替+** |
for(int i=0i<a.size();;i++){
}
1 | 正例: |
for(int i=0,n=a.size();i<n;i++){
}
1 |
|
int index=-1;
for(int i=0,n=a.size();i<n;i++){
if(a.get(i)==3){
index=i;
}
}
1 | 正例: |
int index=-1;
for(int i=0,n=a.size();i<n;i++){
if(a.get(i)==3){
index=i;
break;
}
}
**不要在循環中改變數組/List的大小**
**使用`System.arrayCopy`進行復制數組**
**使用Buffer進行IO操作**
**釋放資源的代碼要放在finally代碼塊中**
**多用java.util.Obects工具類**
<h4 style="color:red">推薦閱讀</h4>
1. [SpringCloud學習系列彙總](https://mp.weixin.qq.com/s/TL4w0u6QA-wFx19IH9Xs6A)
2. [爲什麼一線大廠面試必問redis,有啥好問的?](https://mp.weixin.qq.com/s/NSojCEA-lF8ocR1XeuXbsg)
3. [多線程面試必備基礎知識彙總](https://mp.weixin.qq.com/s/c3ngvdAc6lAs4d1sIdg16Q/)
4. [Java集合源碼分析彙總-JDK1.8](https://mp.weixin.qq.com/s/UAGihOEUPmFnwrgkSJZqpQ)
5. [Linux常用命令速查-彙總篇](https://mp.weixin.qq.com/s/WG4ZWfId-MRslWtcDtx0aA)
6. [JVM系列文章彙總](https://mp.weixin.qq.com/s/uDftoMTwJqk7H9bfQaa0sw)
7. [MySQL系列文章彙總](https://mp.weixin.qq.com/s/SUV1DRSFhOIksj9C_qC7aA)
7. [RabbitMQ系列文章彙總](https://mp.weixin.qq.com/s/rDqhdBk879neFM_CZzK9Yw)
<h4 style="color:red">博客所有文章首發於公衆號《Java學習錄》轉載請保留
掃碼關注公衆號即可領取2000GJava學習資源 </h4>
![1](https://shiyujun.cn/img/gongzhonghao.jpg)