toArray转换 java.lang.ClassCastException

[toArray转换踩坑 java.lang.ClassCastException]

  1. 问题
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.重试解决

猜你喜欢

转载自blog.csdn.net/Wis57/article/details/130005079