2017-11-24 13 views
0

私はjavafxを使用しています。
オブジェクト型の変数をStringProperty型に変換する必要があります。文字列変数からstringPropertyへの変換

Object v = "var"; 
StringProperty var = (StringProperty) v; 

コンパイル時エラーは発生しません。 しかし、java.lang.ClassCastExceptionが表示されます。
おかげ

+0

オブジェクトV = "VAR" のいずれかの種類を避けるために行われる

String v = "var"; StringProperty = new SimpleStringProperty(v); 

または

Object v = "var"; // assignment may come from elsewhere StringProperty var; if (v instanceof String) { var = new SimpleStringProperty((String) v); } else { //.. doSomethingElse } 

を提案します。 StringProperty var =(StringProperty)var; ... varはまだ存在しません、試してください:オブジェクトv = "var"; StringProperty var =(StringProperty)v; – Stultuske

+0

私はこのことを試しましたが、java.lang.ClassCastExceptionエラーが発生しました。 @Stultuske –

+0

https://stackoverflow.com/questions/380813/downcasting-in-javaを参照してください。 –

答えて

2

あなたはStringPropertyからString値を含むObjectをキャストすることはできません。

しかし、あなたはStringを含むObjectからStringPropertyをインスタンス化することができます

Object v = "var"; 
    StringProperty var = new SimpleStringProperty((String) v); 
1

なぜObjectString値を割り当てますか? 、私はこれがちょうど例外

関連する問題