首先提个问题:”“.split(“,”).length()为多少?(引号中什么东西都没有,在编辑的时候不知道为什么加了个空格,取消不了)
在做项目中,没有想清楚这个问题,导致在使用的过程出了bug,花了好久才定位成功。
项目中的代码类似于
StringBuilder sb=new StringBuilder();
JSONArray result= new JSONArray();
JSONArray init = new JSONArray();
for(int i=0;i<sb.toString().spilt(",").length();i++){
result.put(init.getJSONObject(i));
}
由于当时没有意识到”“.split(“,”).length()=1,导致把一个null push到了result中,然后在后续操作时出错了。
其实后来想想,”“.split(“,”).length()=1也是完全有理由的,”“.split(“,”)为[“”],那么length肯定为1。
写个文章记录下吧。吃一堑,长一智。