for循环2次取出Excel数据生成的Json元素顺序不一致?

囊大药 2017-12-20 04:28:30
这个是用jxl包里的工具Workbook取出 excel 的行和列,放进json里面。。。。然后对生成的json解析(下图),得到的元素顺序不一致,为什么会这样? 难道跟excel的包有关系吗?


public void readExcel() {
try {
InputStream is = getResources().getAssets().open("android_read.xls");
Workbook book = Workbook.getWorkbook(is);
int num = book.getNumberOfSheets();
main_tv2.setText("the num of sheets : " + num+ "\n");
// 获得第一个工作表对象
Sheet sheet1 = book.getSheet(0);

int Rows1 = sheet1.getRows(); //行
int Cols1 = sheet1.getColumns(); //列

jsonArray_single = new JSONArray();
JSONObject jsonObject = null;

//excel sheet.getCell(列,行)

for (int i = 0; i < Rows1; i++) {
jsonObject = new JSONObject();

for (int j = 0; j < Cols1; j++) {
// getCell(Col,Row)获得单元格的值
jsonObject.put((i+1)+"行"+(j+1)+"列", sheet1.getCell(j,i).getContents());
}

jsonArray_single.put(jsonObject); //最后拿到的jsonArray
}

System.out.println(jsonArray_single.get(0)); //元素顺序不确定 ??? 3,7,1,6,5,2,4 why?
System.out.println(jsonArray_single.get(1)); //元素顺序不确定 ??? 6,4,3,2,5,1,7 why?

book.close();
} catch (Exception e) {
System.out.println(e);
}
}




为什么每个json元素的顺序都不一致?试过几次,每次都不一样,还不是固定的不一样。。。
...全文
171 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianfang 2017-12-21
  • 打赏
  • 举报
回复
很可能是个map对象,缺省是不排序的

50,528

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧