在我们的Java程序中,我们收到一个Erlang元组并将其提取到OtpErlangTuple
中。元组的元素之一应该是字符串,但可以为空。如果为空,则其值为[]
-表示空列表的Erlang方式。
我的问题是如何检查元素是否为空,以便将其转换为OtpErlangString
?
由于现在是(OtpErlangString)messageData.elementAt(2)
,因此引发了以下异常:class java.lang.ClassCastException, 'com.ericsson.otp.erlang.OtpErlangList cannot be cast to com.ericsson.otp.erlang.OtpErlangString'
谢谢,
马丁
最佳答案
检查它是否等于[]
,如果是,则执行特定操作:
OtpErlangString convertedString;
if(messageData.elementAt(2).toString().equals("[]")) {
// do something assigning some value to convertedString
} else {
convertedString = (OtpErlangString) messageData.elementAt(2);
}
您可以根据想要的方式来处理这种情况,具体取决于您随后如何管理这些
OtpErlangString