动态二维数组赋值
一开始是不是觉得很简单的事情,但是你是不是来百度了,是不是。。
这也没什么的,程序员天天在解决bug,哪有时间去学习基本知识
需求:根据json解析过来的数据,赋值给二维数据
private String[][] citys;
citys = new String[jsonArray.length()][];
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
//市
JSONArray cityArrJson = jsonObject.getJSONArray("city");
String[] citysCol = new String[cityArrJson.length()];
for(int n = 0; n<cityArrJson.length();n++){
JSONObject cityObject = cityArrJson.getJSONObject(n);
citysCol[n] = cityObject.getString("name");
}
citys[i] = citysCol;
}
原理:二维数组是由一维数组组成的
上面代码讲解:
1.脑海先有二维数组的形式,比如:int[][] a = {{1,2,3},{4,5}}
2.动态二维数组也需要先知道行数的(new String[jsonArray.length()][]),jsonArray.length()就是行数,是接口返回的也算是动态了。citys[i]是每一行的数据
csdn也有上面的代码,但没讲解,不过都是我写的
还有问题请加群:142739277