2011-09-15 13 views
0

私たちのJavaプログラムでは、Erlangタプルを受け取り、OtpErlangTupleで抽出します。タプルの要素の1つは文字列である必要がありますが、空にすることができます。それが空の場合、値は[] - 空リストを表すアーランの方法です。com.ericsson.otp.erlangでerlangの用語が空であるかどうかを調べる方法

私の質問は、要素が空であることを確認して、それをOtpErlangStringにキャストする方法ですか?それは[]と等しい場合

class java.lang.ClassCastException , 'com.ericsson.otp.erlang.OtpErlangList cannot be cast to com.ericsson.otp.erla ng.OtpErlangString'

おかげで、

マーティン

答えて

2

チェックをし、もしそうであれば、特定の操作を実行します。それは今(OtpErlangString)messageData.elementAt(2)あるので

は、以下の例外が発生します:

OtpErlangString convertedString; 
if(messageData.elementAt(2).toString().equals("[]")) { 
    // do something assigning some value to convertedString 
} else { 
    convertedString = (OtpErlangString) messageData.elementAt(2); 
} 

これらの管理方法に応じて、このケースを好きなように扱うことができます。OtpErlangString

+1

素晴らしいです。ありがとう。ニースハック。私はそれを 'OtpErlangList'にキャストしようとしていました。要素が含まれているかどうかをチェックしましたが、空でない文字列があれば、リストにキャストしたくありません。私はなぜ、なぜかさまよう。 Erlang文字列= Erlangリストではありませんか? –

関連する問題