[英]ClassCastException: java.lang.Object[] cannot be cast to java.lang.String[][]
I'm having a problem with Android when passing a 2d array to another activity. 将2d数组传递到另一个活动时,Android出现了问题。 I have no problems sending it through a extra as a serializable.
我可以通过额外的可序列化方式发送它。 But when receiving it, i get the following error:
但是,收到它时,出现以下错误:
E/AndroidRuntime(7396): Caused by: java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.String[][] E / AndroidRuntime(7396):由以下原因引起:java.lang.ClassCastException:java.lang.Object []无法转换为java.lang.String [] []
I'm using the following code: 我正在使用以下代码:
public void getMatriz(){
Bundle extras = getIntent().getExtras();
if(extras!=null){
String[][] matriz = (String[][]) extras.getSerializable("matriz");
}
}
Can someone help me solve this problem? 有人可以帮我解决这个问题吗? Thanks in advance.
提前致谢。
You need to deserialize to get back stream array. 您需要反序列化以返回流数组。
For eg following code snippet you can pass serializable as ObjectInputStream
. 例如,下面的代码片段可以将Serializable作为
ObjectInputStream
传递。
ObjectInputStream ois = new ObjectInputStream(is);
return (String[][]) ois.readObject();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.