1、String.valueOf 如果对象是空,返回的是“Null”字符串而不是null,因此转字符串之前要进行判空
package leecode;
public class demo3 {
public static void main(String[] args) {
Object a=null;
String s = String.valueOf(a);
if(s!=null&&s.length()>0) System.out.println("Aaa");
// System.out.println(s);
}
}
2、遍历的时候删除遇到的坑
package leecode;
import java.util.ArrayList;
public class demo3 {
public static void main(String[] args) {
ArrayList<Integer> integers = new ArrayList<>();
integers.add(1);
integers.add(2);
integers.add(3);
for(Integer i:integers){
if(i==1) integers.remove(i);
}
}
}
像这种一边遍历,一边删除会产生错误,因为内部会认为产生了并发
3、parseInt 遇到59.00这样的会报错
解决方案:
Double.valueof(xx).intValue()
4、 bigDecimal的除法问题
package leecode;
import java.math.BigDecimal;
public class demo3 {
public static void main(String[] args) {
BigDecimal bigDecimal = new BigDecimal(6);
BigDecimal bigDecimal1 = new BigDecimal(10);
BigDecimal divide = bigDecimal1.divide(bigDecimal);
System.out.println(divide);
}
}