需求| 想在数组中既有String类型又有int等类型,所以需要定义数组为Object类型
背景| 现在有一个字符串params,需要对其进行逗号分隔赋值到数组里,这时遇到了个问题,即使直接定义的Object[]类型数组,它也会变为String[]数组,再向里面更改值为int型数据时抛错
原来的写法:Object[] paramlist=params.split(",");
解决方法|
new一个Object[]数组,不要使用赋值的形式,先new一个固定大小的数组,更改每个位置的值,下面是更改后的,此时再更改数据为int型的不会抛错
String[] paramslist_temp = params.split(",|,"); int num = paramslist_temp.length; paramlist = new Object[num]; for (int i = 0; i < num; i++) { paramlist[i] = paramslist_temp[i]; } }