java String 和ArrayList转换 换化

news/2024/11/15 4:14:17/

 

[Ljava.lang.String; cannot be cast to java.util.List

原因:

Map<String, Object> parameters = (Map<String, Object>) jsonResult.getData();

parameters 参数中refrenceIds 是个string

(比如:"refrenceIds": ["1438647705516691456", "1436069122789134336"],)

下步代码:

List<Long> refrenceIds = (List<Long>) MapUtils.getObject(parameters, SystemConst.REFRENCEIDS);

就会转换报错

解决:

@Override
public int submitCheckBatchAgreeOrder(Map<String, Object> parameters) throws Exception {//List<Long> refrenceIds = (List<Long>) MapUtils.getObject(parameters, SystemConst.REFRENCEIDS);List<Long> refrenceIds = ArraylistUtils.getLongList((String[]) MapUtils.getObject(parameters, SystemConst.REFRENCEIDS));parameters.put(SystemConst.REFRENCEIDS, refrenceIds);if (CollectionUtils.isEmpty(refrenceIds)){return NumberUtils.INTEGER_ZERO;}return agreeOrderDao.submitCheckBatchAgreeOrder(parameters);
}

--------------------------------------------------------

实体类转Map

Map<String, Object> parameters = CglibUtils.beanToMap(request);

 

--------------------------------------------------------

将指定的字符串数组转化为List<Long>
public static List<Long> getLongList(String[] stringArray)
{if (ArrayUtils.getLength(stringArray) == NumberUtils.INTEGER_ZERO){return null;}Set<Long> set = Sets.newHashSetWithExpectedSize(stringArray.length);for (String str : stringArray){try{set.add(Long.parseLong(str));}catch (NumberFormatException ex){log.error("编号格式有误---{}", str);return null;}}return new ArrayList<>(set);
}

--------------------------------------------------------


http://www.ppmy.cn/news/48907.html

相关文章

介绍一款idea神级插件【Bito-ChatGPT】

什么是Bito&#xff1f; Bito是一款在IntelliJ IDEA编辑器中的插件&#xff0c;Bito插件是由ChatGPT团队开发的&#xff0c;它是ChatGPT团队为了提高开发效率而开发的一款工具。ChatGPT团队是一支专注于自然语言处理技术的团队&#xff0c;他们开发了一款基于GPT的自然语言处理…

MySql-高级( 面试问题简析) 学习笔记

文章目录 1. MySql 中 MyISAM 和 InnoDB 存储引擎区别1.1. MyISAM1.2. InnoDB 2. 索引的数据结构2.1. B Tree索引2.2. BTree索引2.3. MySql 做的优化 3. 为什么使用BTree索引而不使用Hash索引&#xff1f;4. 为什么使用BTree索引而不使用B-Tree索引&#xff1f;5. MyISAM 存储引…

LDAP常见FAQ

01 LDAP如何与AD一起工作&#xff1f; LDAP提供了一种管理存储在AD中的用户和组成员身份的方法。LDAP 是一种用于对 IT 资源进行细粒度访问的协议&#xff0c;而AD是用户和组信息的数据库。 02 什么是LDAP注入&#xff1f; 当不法分子操纵 LDAP 代码从 LDAP 服务器修改或泄露敏…

软件工程 面试

简述软件设计的过程 软件设计是软件工程中的一个非常重要的阶段&#xff0c;在软件开发中是必不可少的一部分。软件设计的过程包括以下几个步骤&#xff1a; 需求分析&#xff1a;在软件设计过程中&#xff0c;首先要明确软件系统的需求。这就需要对用户需求和功能需求进行深入…

今天面试招了个25K的测试员,从腾讯出来的果然都有两把刷子···

公司前段时间缺人&#xff0c;也面了不少测试&#xff0c;前面一开始瞄准的就是中级的水准&#xff0c;也没指望来大牛&#xff0c;提供的薪资在15-25k&#xff0c;面试的人很多&#xff0c;但平均水平很让人失望。看简历很多都是4年工作经验&#xff0c;但面试中&#xff0c;不…

元宇宙的应用领域

应用领域一&#xff1a;游戏 1.游戏是最先成长起来的元宇宙场景。虚拟社交身份、开放性、经济系统、沉浸感、世界可持续性是元宇宙游戏需关注的五大特征。 2.元宇宙游戏依然是游戏&#xff0c;现阶段参与元宇宙游戏的主要是游戏爱好者。新的概念依旧需要好的游戏产品支撑。团…

什么情况需要考虑 mysql 分表

最近看到公司的其中一个数据库用户表每个月都要几百万的新用户数据增加&#xff0c;目前单表已经是两千多万了。所以找了 DBA 讨论&#xff0c;发现以前学的知识&#xff0c;以及网上的一些资料其实说的并不是很正确&#xff0c;比如 mysql 单表不建议超过一千万&#xff0c;我…

从C出发 26 --- 指针 : 一种特殊的变量

指针是变量&#xff0c; 是特殊的变量 在计算机内部逻辑上是一个一个存储单元&#xff0c;每个存储单元是一个字节 8 G /16 G 表示的是存储单元的数量 如果要确定某一个具体的存储单元&#xff0c;要怎么办&#xff1f; 可以编号&#xff0c;这里的 0 1 2 3 指的就是内存地…