Java中JSONArray转换成int[]的办法


今天写项目的时候要做一个MyBatis的带IN子句的删除,于是用一个整型数组来保存待删除数据的ID

从前端将JSON字符串搞过来之后如何将JSONArray转换成int类型数组就成了个问题

下面是我的办法(此处的JSONArray对象是Hutool中的,不是org.json中的,不过道理都是一样的)

1     JSONArray jsonArray = JSONUtil.parseArray(deleteFileIds); 2         if (jsonArray.size() == 0) { 3             return new Responses(StatusCode.INPUT_ERROR, StatusMessage.PARAM_ERROR); 4  } 5         int[] deleteFileIdArray = new int[jsonArray.size()]; 6         for (int i = 0; i < jsonArray.size(); i++) { 7             deleteFileIdArray[i] = (int) jsonArray.get(i); 8         }    

解读一下代码流程大概就是:

将字符串转换为JSON数组

然后初始化一个大小跟JSON数组相同的int类型数组

使用循环遍历元素将JSON数组中的每个元素放入int类型数组中

不管是Hutool还是fastjson貌似都没有提供JSONArray转换成基本类型数组的方法,只能自己写一个了

多学习,多思考


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM