map获取的值为object范例数组,转int[]报错:net.sf.json.JSONArray cannot be cast to [Ljava.lang.Object
数据范例
- { "rtd_val": [0, 0, 0, 0, 0, 0, 0, 0], "status": [1, 1, 1, 1, 1, 1, 1, 1]}
复制代码 数据范例为json,通过json获取
- Integer[] statusVals= Arrays.stream((Object[]) jsonUpdata.get("status_val")).map(p -> Integer.valueOf(p.toString())).toArray(Integer[]::new);
复制代码 报错:
- net.sf.json.JSONArray cannot be cast to [Ljava.lang.Object
复制代码 因为获取到的数据范例是object,但值为object[],所以找了很多多少方法都没管理,最后曲线救国
- /** * object转int数组 */ public static int[] objectToByteArray(Object obj) { JSONArray jsonArray= JSONArray.fromObject(obj); int length=jsonArray.size(); int[] rtdVals=new int[length]; if(length>0){ for (int i = 0; i < jsonArray.size(); i++) { rtdVals[i] = (int) jsonArray.get(i); } } return rtdVals; }
复制代码 完美管理!
朋侪们有更好的方法,接待讨论
来源:https://blog.csdn.net/m0_37987151/article/details/111946285
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |