toArray转换踩坑 java.lang.ClassCastException
- 问题
List<String> auditOptions = Lists.newArrayList();
//一系列灌数据操作
auditOption.add...
String[] options = (String[]) auditOptions.toArray();
报错信息
java.lang.ClassCastException: class [Ljava.lang.Object; cannot be cast to class [Ljava.lang.String;
([Ljava.lang.Object; is in module java.base of loader 'bootstrap'; [Ljava.lang.String;
is in unnamed module of loader org.springframework.boot.loader.LaunchedURLClassLoader @51081592)
2. 解决
a.查了资料才发现:向上转型不用强转,被强转的对象类型必须是需要强转类型的同类型或者子类,所以Object转String是行不通的
b.又去翻了一下toArray,发现还提供了另一个泛型的方法
3.重试解决
参考:
https://blog.csdn.net/hzj1998/article/details/96004686
https://blog.csdn.net/zjx2016/article/details/78273192