kx.c
クラスflip
オブジェクトを文字列にキャストしようとしています:
String test = (String) c.at(flip[0],1)
ただし、C オブジェクトを文字列にキャストできないというエラーが表示されます。文字列を返すために kx C オブジェクトをキャストできることを知っている人はいますか?
Ac.Flip
は、キーから値へのマッピングです。特に、String
キーと値があり、 (それぞれと呼ばれる)Object
内の2つの配列に格納されています。Flip
x
y
キー「foo」の値を取得する場合は、次のように実行できます。
c.Flip myFlip = ...; // Get hold of your flip
Object value = myFlip.at("foo"); // Throws ArrayIndexOutOfBoundsException if "foo" is not found
値がになっていることがわかっている場合はString
、次のようにキャストできます。
String strValue = (String) value; // Throws ClassCastException if value isn't a String
次のように、最後の2行を1つに結合することもできます。
String strValue = (String) myFlip.at("foo");
「Cオブジェクト」とは正確に何を意味するのかよくわかりませんが、それはchar配列、つまりKdb文字列を表すJavaタイプであると想定しています。できることは次のとおりです。
Object[] data = this.flip.y;
Object[] columnData = (Object[]) data[row];
char[] data = (char[]) columnData[i];
return String.valueOf(data);
kdb シンボルを取得しようとしている場合、それは String 配列になります。
Object[] data = this.flip.y;
Object[] columnData = (Object[]) data[row];
String data = (String) columnData[i];
return data;