2017-10-06 4 views
0

最初のソートされた分類済みビュー列に値を収集したいとします。ViewEntry - columnValues.get(0)多値列の場合があります

しかし、時々値によるカラム式多値することができる。

names := @If(Form = "project"; projectManager : projectCustomer;       Form = "budget"; docAuthors; Form = "plan"; "docOwners"; "[Unknown]"); 

@Return(@Name([Abbreviate];@Unique(names))) 

一部のフィールドは、いくつかは多値である、単一の値です。

私は

Vector<String> names= entry.getColumnValues(); 
String name = String.valueOf(names.get(0)); 

を試してみましたが、これは、コードを壊し

文字列

Vector<String> names= entry.getColumnValues(); 
String name = names.get(0); 
に配列を変換します。

誰かが列から値を取得する提案がありますか?

答えて

3

値のタイプをチェックしようとしましたか?このような何か:

Vector<?> data = entry.getColumnValues(); 
Object tmp = data.get(0); 
Vector<?> result = new Vector(); 

if(tmp instanceof String){ 
    result.add((String) tmp); 
} 

if(tmp instanceof ArrayList){ 
    ArrayList list = (ArrayList) tmp; 
    for(int i=0; i<list.size(); i++){ 
     result.add(list.get(i)); 
    } 
} 

if(tmp instanceof Vector){ 
    Vector<?> vec = (Vector) tmp; 
    for(int i=0; i<vec.size(); i++){ 
     result.add(vec.get(i)); 
    } 
} 


return result; 

その後、あなたは常にすべての値(たとえそれが唯一の単一の値である)

+0

こんにちはスヴェンとのベクトルを取得します、おかげで、自分の命の恩人を検討してください。多くは気付いた! –

関連する問題