请选择 进入手机版 | 继续访问电脑版

net.sf.json.JSONArray cannot be cast to [Ljava.lang.Object

[复制链接]
小浣熊 发表于 2021-1-2 11:44:03 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
map获取的值为object范例数组,转int[]报错:net.sf.json.JSONArray cannot be cast to [Ljava.lang.Object



数据范例

  1. {        "rtd_val": [0, 0, 0, 0, 0, 0, 0, 0],        "status": [1, 1, 1, 1, 1, 1, 1, 1]}
复制代码
数据范例为json,通过json获取
  1. Integer[] statusVals= Arrays.stream((Object[]) jsonUpdata.get("status_val")).map(p -> Integer.valueOf(p.toString())).toArray(Integer[]::new);
复制代码
报错:
  1. net.sf.json.JSONArray cannot be cast to [Ljava.lang.Object
复制代码
因为获取到的数据范例是object,但值为object[],所以找了很多多少方法都没管理,最后曲线救国
  1. /**     * 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
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )