2012-02-04 5 views
3

私のコントロールの値が1つの値しかない場合、次のコードはStringを返します。複数の値がある場合、コードはjava.util.Vectorを返します。いつもjava.util.Vectorを返す方法

getComponent( "MyControlと")のgetValue()。

私は唯一つの値がある場合でも、このコードはベクトルを返すようにしたいです。

私は、Arrayに私の文字列を変換し、いくつかのコードスニペットを見てきましたが、私はベクトルを取り戻すしたいです。

答えて

6

のjava.util.Vector(またはそのことについては配列)として返される特異値を強制する方法はありません。唯一の方法は、それがベクトルであるかどうかを調べるテストで、そうでない場合はベクトルを構築することです。あなたは機能にそれを置いて、例えば...それに呼び出しをラップすることができ(これは、あなたが、などの構文を確認する必要がありますので、未テストコードです):

asVector(getComponent("mycontrol").getValue()); 

function asVector(obj) { 
    if (obj.constructor === java.util.Vector) { 
    return obj; 
    } else { 
    var x:java.util.Vector = new java.util.Vector(); 
    x.add(obj); 
    return x; 
    } 
} 
+1

おかげでジェレミー、かなりうまく働いたが、これはさらにうまくいった。私は '関数asVector(OBJ){ \t場合(typeof演算OBJ === "のjava.util.Vector"){ \t \t戻りOBJをtypeof演算するobj.contructorを変更し、 \t}他{ \t \tのvar X:のjava.util.Vector =新規のjava.util.Vector()。 \t \t x.add(OBJ)。 \t \t return x; \t} } 私はこれらのコメントが気に入らない、彼らはうまくフォーマットしない –

関連する問題