Query KDB with java
I have a table of String columns called Trade in Kdb.
I have a snippet below to print the table content:
c.Flip flip=(c.Flip)c.k("0!select from Trade");
for(int row=0;row<n(flip.y[0]);row++){
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
}
All I see as output are unreadable. Am I missing something here? Thanks in advance
Output:
[C@67205a84,[C@7d0587f1,[C@5d76b067,[C@2a17b7b6,[C@4f063c0a,[C@1e6d1014,[C@76707e36,[C@614ddd49,[C@1f554b06,[C@694e1548,func,[C@1c3a4799,[C@131276c2,[C@26aa12dd,[C@3fd7a715,[C@711f39f9,[C@71bbf57e,[C@7f13d6e,[C@51cdd8a,[C@d44fc21,func,[C@23faf8f2,[C@2d6eabae,[C@4e7dc304,[C@64729b1e,[C@10bbd20a,[C@48503868,[C@6895a785,[C@184f6be2,[C@56aac163,[C@1f7030a6,[C@5a1c0542,[C@396f6598,[C@394e1a0f,func,[C@27a5f880,[C@1d29cf23,[C@5f282abb,[C@167fdd33
[C@1e965684,[C@4d95d2a2,[C@53f65459,[C@3b088d51,[C@1786dec2,[C@74650e52,[C@15d0c81b,[C@6acdbdf5,[C@4b1c1ea0,[C@17579e0f,func,[C@4d41cee,[C@3712b94,[C@2833cc44,[C@33f88ab,[C@27a8c74e,[C@2d8f65a4,[C@1b68ddbd,[C@646d64ab,[C@59e5ddf,func,[C@536aaa8d,[C@e320068,[C@1f57539,[C@76f2b07d,[C@704a52ec,[C@6ee52dcd,[C@4493d195,[C@2781e022,[C@57e1b0c,[C@4232c52b,[C@1877ab81,[C@305fd85d,[C@458c1321,func,[C@11438d26,[C@34cd072c,[C@7a1ebcd8,[C@5faeada1
[C@528931cf,[C@ea1a8d5,[C@1563da5,[C@2bbf4b8b,[C@30a3107a,[C@33c7e1bb,[C@34c4973,[C@52feb982,[C@7a765367,[C@76b0bfab,func,[C@17d677df,[C@3043fe0e,[C@78e67e0a,[C@bd8db5a,[C@2f943d71,[C@80503,[C@4b553d26,[C@69a3d1d,[C@86be70a,func,[C@480bdb19,[C@2a556333,[C@7d70d1b1,[C@2a742aa2,[C@3cb1ffe6,[C@3dfc5fb8,[C@467aecef,[C@4d50efb8,[C@7e2d773b,[C@2173f6d9,[C@307f6b8c,[C@7a187f14,[C@6f195bc3,func,[C@51e2adc7,[C@1a8a8f7c,[C@2353b3e6,[C@631330c
[C@42f93a98,[C@c46bcd4,[C@3234e239,[C@3d921e20,[C@36b4cef0,[C@fad74ee,[C@1a1d6a08,[C@37d31475,[C@27808f31,[C@436e852b,func,[C@32d2fa64,[C@1d8d30f7,[C@3e57cd70,[C@9a7504c,[C@2c039ac6,[C@587d1d39,[C@58c1670b,[C@6b57696f,[C@5bb21b69,func,[C@6b9651f3,[C@38bc8ab5,[C@687080dc,[C@23d2a7e8,[C@7a9273a8,[C@26a7b76d,[C@4abdb505,[C@7ce6a65d,[C@1500955a,[C@e874448,[C@29b5cd00,[C@60285225,[C@7113b13f,func,[C@45820e51,[C@42d8062c,[C@6043cd28,[C@cb51256
kdb
add a comment |
I have a table of String columns called Trade in Kdb.
I have a snippet below to print the table content:
c.Flip flip=(c.Flip)c.k("0!select from Trade");
for(int row=0;row<n(flip.y[0]);row++){
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
}
All I see as output are unreadable. Am I missing something here? Thanks in advance
Output:
[C@67205a84,[C@7d0587f1,[C@5d76b067,[C@2a17b7b6,[C@4f063c0a,[C@1e6d1014,[C@76707e36,[C@614ddd49,[C@1f554b06,[C@694e1548,func,[C@1c3a4799,[C@131276c2,[C@26aa12dd,[C@3fd7a715,[C@711f39f9,[C@71bbf57e,[C@7f13d6e,[C@51cdd8a,[C@d44fc21,func,[C@23faf8f2,[C@2d6eabae,[C@4e7dc304,[C@64729b1e,[C@10bbd20a,[C@48503868,[C@6895a785,[C@184f6be2,[C@56aac163,[C@1f7030a6,[C@5a1c0542,[C@396f6598,[C@394e1a0f,func,[C@27a5f880,[C@1d29cf23,[C@5f282abb,[C@167fdd33
[C@1e965684,[C@4d95d2a2,[C@53f65459,[C@3b088d51,[C@1786dec2,[C@74650e52,[C@15d0c81b,[C@6acdbdf5,[C@4b1c1ea0,[C@17579e0f,func,[C@4d41cee,[C@3712b94,[C@2833cc44,[C@33f88ab,[C@27a8c74e,[C@2d8f65a4,[C@1b68ddbd,[C@646d64ab,[C@59e5ddf,func,[C@536aaa8d,[C@e320068,[C@1f57539,[C@76f2b07d,[C@704a52ec,[C@6ee52dcd,[C@4493d195,[C@2781e022,[C@57e1b0c,[C@4232c52b,[C@1877ab81,[C@305fd85d,[C@458c1321,func,[C@11438d26,[C@34cd072c,[C@7a1ebcd8,[C@5faeada1
[C@528931cf,[C@ea1a8d5,[C@1563da5,[C@2bbf4b8b,[C@30a3107a,[C@33c7e1bb,[C@34c4973,[C@52feb982,[C@7a765367,[C@76b0bfab,func,[C@17d677df,[C@3043fe0e,[C@78e67e0a,[C@bd8db5a,[C@2f943d71,[C@80503,[C@4b553d26,[C@69a3d1d,[C@86be70a,func,[C@480bdb19,[C@2a556333,[C@7d70d1b1,[C@2a742aa2,[C@3cb1ffe6,[C@3dfc5fb8,[C@467aecef,[C@4d50efb8,[C@7e2d773b,[C@2173f6d9,[C@307f6b8c,[C@7a187f14,[C@6f195bc3,func,[C@51e2adc7,[C@1a8a8f7c,[C@2353b3e6,[C@631330c
[C@42f93a98,[C@c46bcd4,[C@3234e239,[C@3d921e20,[C@36b4cef0,[C@fad74ee,[C@1a1d6a08,[C@37d31475,[C@27808f31,[C@436e852b,func,[C@32d2fa64,[C@1d8d30f7,[C@3e57cd70,[C@9a7504c,[C@2c039ac6,[C@587d1d39,[C@58c1670b,[C@6b57696f,[C@5bb21b69,func,[C@6b9651f3,[C@38bc8ab5,[C@687080dc,[C@23d2a7e8,[C@7a9273a8,[C@26a7b76d,[C@4abdb505,[C@7ce6a65d,[C@1500955a,[C@e874448,[C@29b5cd00,[C@60285225,[C@7113b13f,func,[C@45820e51,[C@42d8062c,[C@6043cd28,[C@cb51256
kdb
add a comment |
I have a table of String columns called Trade in Kdb.
I have a snippet below to print the table content:
c.Flip flip=(c.Flip)c.k("0!select from Trade");
for(int row=0;row<n(flip.y[0]);row++){
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
}
All I see as output are unreadable. Am I missing something here? Thanks in advance
Output:
[C@67205a84,[C@7d0587f1,[C@5d76b067,[C@2a17b7b6,[C@4f063c0a,[C@1e6d1014,[C@76707e36,[C@614ddd49,[C@1f554b06,[C@694e1548,func,[C@1c3a4799,[C@131276c2,[C@26aa12dd,[C@3fd7a715,[C@711f39f9,[C@71bbf57e,[C@7f13d6e,[C@51cdd8a,[C@d44fc21,func,[C@23faf8f2,[C@2d6eabae,[C@4e7dc304,[C@64729b1e,[C@10bbd20a,[C@48503868,[C@6895a785,[C@184f6be2,[C@56aac163,[C@1f7030a6,[C@5a1c0542,[C@396f6598,[C@394e1a0f,func,[C@27a5f880,[C@1d29cf23,[C@5f282abb,[C@167fdd33
[C@1e965684,[C@4d95d2a2,[C@53f65459,[C@3b088d51,[C@1786dec2,[C@74650e52,[C@15d0c81b,[C@6acdbdf5,[C@4b1c1ea0,[C@17579e0f,func,[C@4d41cee,[C@3712b94,[C@2833cc44,[C@33f88ab,[C@27a8c74e,[C@2d8f65a4,[C@1b68ddbd,[C@646d64ab,[C@59e5ddf,func,[C@536aaa8d,[C@e320068,[C@1f57539,[C@76f2b07d,[C@704a52ec,[C@6ee52dcd,[C@4493d195,[C@2781e022,[C@57e1b0c,[C@4232c52b,[C@1877ab81,[C@305fd85d,[C@458c1321,func,[C@11438d26,[C@34cd072c,[C@7a1ebcd8,[C@5faeada1
[C@528931cf,[C@ea1a8d5,[C@1563da5,[C@2bbf4b8b,[C@30a3107a,[C@33c7e1bb,[C@34c4973,[C@52feb982,[C@7a765367,[C@76b0bfab,func,[C@17d677df,[C@3043fe0e,[C@78e67e0a,[C@bd8db5a,[C@2f943d71,[C@80503,[C@4b553d26,[C@69a3d1d,[C@86be70a,func,[C@480bdb19,[C@2a556333,[C@7d70d1b1,[C@2a742aa2,[C@3cb1ffe6,[C@3dfc5fb8,[C@467aecef,[C@4d50efb8,[C@7e2d773b,[C@2173f6d9,[C@307f6b8c,[C@7a187f14,[C@6f195bc3,func,[C@51e2adc7,[C@1a8a8f7c,[C@2353b3e6,[C@631330c
[C@42f93a98,[C@c46bcd4,[C@3234e239,[C@3d921e20,[C@36b4cef0,[C@fad74ee,[C@1a1d6a08,[C@37d31475,[C@27808f31,[C@436e852b,func,[C@32d2fa64,[C@1d8d30f7,[C@3e57cd70,[C@9a7504c,[C@2c039ac6,[C@587d1d39,[C@58c1670b,[C@6b57696f,[C@5bb21b69,func,[C@6b9651f3,[C@38bc8ab5,[C@687080dc,[C@23d2a7e8,[C@7a9273a8,[C@26a7b76d,[C@4abdb505,[C@7ce6a65d,[C@1500955a,[C@e874448,[C@29b5cd00,[C@60285225,[C@7113b13f,func,[C@45820e51,[C@42d8062c,[C@6043cd28,[C@cb51256
kdb
I have a table of String columns called Trade in Kdb.
I have a snippet below to print the table content:
c.Flip flip=(c.Flip)c.k("0!select from Trade");
for(int row=0;row<n(flip.y[0]);row++){
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
}
All I see as output are unreadable. Am I missing something here? Thanks in advance
Output:
[C@67205a84,[C@7d0587f1,[C@5d76b067,[C@2a17b7b6,[C@4f063c0a,[C@1e6d1014,[C@76707e36,[C@614ddd49,[C@1f554b06,[C@694e1548,func,[C@1c3a4799,[C@131276c2,[C@26aa12dd,[C@3fd7a715,[C@711f39f9,[C@71bbf57e,[C@7f13d6e,[C@51cdd8a,[C@d44fc21,func,[C@23faf8f2,[C@2d6eabae,[C@4e7dc304,[C@64729b1e,[C@10bbd20a,[C@48503868,[C@6895a785,[C@184f6be2,[C@56aac163,[C@1f7030a6,[C@5a1c0542,[C@396f6598,[C@394e1a0f,func,[C@27a5f880,[C@1d29cf23,[C@5f282abb,[C@167fdd33
[C@1e965684,[C@4d95d2a2,[C@53f65459,[C@3b088d51,[C@1786dec2,[C@74650e52,[C@15d0c81b,[C@6acdbdf5,[C@4b1c1ea0,[C@17579e0f,func,[C@4d41cee,[C@3712b94,[C@2833cc44,[C@33f88ab,[C@27a8c74e,[C@2d8f65a4,[C@1b68ddbd,[C@646d64ab,[C@59e5ddf,func,[C@536aaa8d,[C@e320068,[C@1f57539,[C@76f2b07d,[C@704a52ec,[C@6ee52dcd,[C@4493d195,[C@2781e022,[C@57e1b0c,[C@4232c52b,[C@1877ab81,[C@305fd85d,[C@458c1321,func,[C@11438d26,[C@34cd072c,[C@7a1ebcd8,[C@5faeada1
[C@528931cf,[C@ea1a8d5,[C@1563da5,[C@2bbf4b8b,[C@30a3107a,[C@33c7e1bb,[C@34c4973,[C@52feb982,[C@7a765367,[C@76b0bfab,func,[C@17d677df,[C@3043fe0e,[C@78e67e0a,[C@bd8db5a,[C@2f943d71,[C@80503,[C@4b553d26,[C@69a3d1d,[C@86be70a,func,[C@480bdb19,[C@2a556333,[C@7d70d1b1,[C@2a742aa2,[C@3cb1ffe6,[C@3dfc5fb8,[C@467aecef,[C@4d50efb8,[C@7e2d773b,[C@2173f6d9,[C@307f6b8c,[C@7a187f14,[C@6f195bc3,func,[C@51e2adc7,[C@1a8a8f7c,[C@2353b3e6,[C@631330c
[C@42f93a98,[C@c46bcd4,[C@3234e239,[C@3d921e20,[C@36b4cef0,[C@fad74ee,[C@1a1d6a08,[C@37d31475,[C@27808f31,[C@436e852b,func,[C@32d2fa64,[C@1d8d30f7,[C@3e57cd70,[C@9a7504c,[C@2c039ac6,[C@587d1d39,[C@58c1670b,[C@6b57696f,[C@5bb21b69,func,[C@6b9651f3,[C@38bc8ab5,[C@687080dc,[C@23d2a7e8,[C@7a9273a8,[C@26a7b76d,[C@4abdb505,[C@7ce6a65d,[C@1500955a,[C@e874448,[C@29b5cd00,[C@60285225,[C@7113b13f,func,[C@45820e51,[C@42d8062c,[C@6043cd28,[C@cb51256
kdb
kdb
edited Nov 15 '18 at 15:00
Toby Speight
17.1k134266
17.1k134266
asked Nov 15 '18 at 14:52
user3682563user3682563
936
936
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
What you are seeing is the default toString() implementation of java.lang.Object.
https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--
The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
The class name is [C which means it's a char array, which means that the query is returning (10) char vectors. Easiest way (while not pretty) will be to replace
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
with
for(int col=0;col<flip.x.length;col++) {
Object rowValue = c.at(flip.y[col],row);
System.out.print((col>0?",":"") + (rowValue instanceof char ? (char) rowValue : rowValue));
}
System.out.println();
Alternatively you can use the Arrays.deepToString() method, but this will include square brackets at the ends of the String.
List<Object> rowData = new ArrayList<>();
for(int col=0;col<flip.x.length;col++) {
rowData.add(c.at(flip.y[col],row));
}
System.out.println(Arrays.deepToString(rowData.toArray()));
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
You can use the following static method to test if an Object is a null representation of its type.qn(rowValue);
Note that theat()
method actually calls theqn()
method and returns a Javanull
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol`func
. Alternatively it could be a lambda (in-line function) being returned by name.
– Tin-Pui
Nov 20 '18 at 9:32
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53322107%2fquery-kdb-with-java%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
What you are seeing is the default toString() implementation of java.lang.Object.
https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--
The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
The class name is [C which means it's a char array, which means that the query is returning (10) char vectors. Easiest way (while not pretty) will be to replace
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
with
for(int col=0;col<flip.x.length;col++) {
Object rowValue = c.at(flip.y[col],row);
System.out.print((col>0?",":"") + (rowValue instanceof char ? (char) rowValue : rowValue));
}
System.out.println();
Alternatively you can use the Arrays.deepToString() method, but this will include square brackets at the ends of the String.
List<Object> rowData = new ArrayList<>();
for(int col=0;col<flip.x.length;col++) {
rowData.add(c.at(flip.y[col],row));
}
System.out.println(Arrays.deepToString(rowData.toArray()));
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
You can use the following static method to test if an Object is a null representation of its type.qn(rowValue);
Note that theat()
method actually calls theqn()
method and returns a Javanull
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol`func
. Alternatively it could be a lambda (in-line function) being returned by name.
– Tin-Pui
Nov 20 '18 at 9:32
add a comment |
What you are seeing is the default toString() implementation of java.lang.Object.
https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--
The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
The class name is [C which means it's a char array, which means that the query is returning (10) char vectors. Easiest way (while not pretty) will be to replace
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
with
for(int col=0;col<flip.x.length;col++) {
Object rowValue = c.at(flip.y[col],row);
System.out.print((col>0?",":"") + (rowValue instanceof char ? (char) rowValue : rowValue));
}
System.out.println();
Alternatively you can use the Arrays.deepToString() method, but this will include square brackets at the ends of the String.
List<Object> rowData = new ArrayList<>();
for(int col=0;col<flip.x.length;col++) {
rowData.add(c.at(flip.y[col],row));
}
System.out.println(Arrays.deepToString(rowData.toArray()));
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
You can use the following static method to test if an Object is a null representation of its type.qn(rowValue);
Note that theat()
method actually calls theqn()
method and returns a Javanull
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol`func
. Alternatively it could be a lambda (in-line function) being returned by name.
– Tin-Pui
Nov 20 '18 at 9:32
add a comment |
What you are seeing is the default toString() implementation of java.lang.Object.
https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--
The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
The class name is [C which means it's a char array, which means that the query is returning (10) char vectors. Easiest way (while not pretty) will be to replace
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
with
for(int col=0;col<flip.x.length;col++) {
Object rowValue = c.at(flip.y[col],row);
System.out.print((col>0?",":"") + (rowValue instanceof char ? (char) rowValue : rowValue));
}
System.out.println();
Alternatively you can use the Arrays.deepToString() method, but this will include square brackets at the ends of the String.
List<Object> rowData = new ArrayList<>();
for(int col=0;col<flip.x.length;col++) {
rowData.add(c.at(flip.y[col],row));
}
System.out.println(Arrays.deepToString(rowData.toArray()));
What you are seeing is the default toString() implementation of java.lang.Object.
https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--
The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
The class name is [C which means it's a char array, which means that the query is returning (10) char vectors. Easiest way (while not pretty) will be to replace
for(int col=0;col<flip.x.length;col++)
System.out.print((col>0?",":"")+c.at(flip.y[col],row));
System.out.println();
with
for(int col=0;col<flip.x.length;col++) {
Object rowValue = c.at(flip.y[col],row);
System.out.print((col>0?",":"") + (rowValue instanceof char ? (char) rowValue : rowValue));
}
System.out.println();
Alternatively you can use the Arrays.deepToString() method, but this will include square brackets at the ends of the String.
List<Object> rowData = new ArrayList<>();
for(int col=0;col<flip.x.length;col++) {
rowData.add(c.at(flip.y[col],row));
}
System.out.println(Arrays.deepToString(rowData.toArray()));
edited Nov 20 '18 at 8:55
answered Nov 15 '18 at 16:25
Tin-PuiTin-Pui
712
712
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
You can use the following static method to test if an Object is a null representation of its type.qn(rowValue);
Note that theat()
method actually calls theqn()
method and returns a Javanull
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol`func
. Alternatively it could be a lambda (in-line function) being returned by name.
– Tin-Pui
Nov 20 '18 at 9:32
add a comment |
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
You can use the following static method to test if an Object is a null representation of its type.qn(rowValue);
Note that theat()
method actually calls theqn()
method and returns a Javanull
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol`func
. Alternatively it could be a lambda (in-line function) being returned by name.
– Tin-Pui
Nov 20 '18 at 9:32
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
Follow up question, how do I check for null in the rowValue. Apparently they just return "func" if null. Is there any other effective way of checking for null aside from comparing it with "func"?
– user3682563
Nov 15 '18 at 16:56
You can use the following static method to test if an Object is a null representation of its type.
qn(rowValue);
Note that the at()
method actually calls the qn()
method and returns a Java null
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol `func
. Alternatively it could be a lambda (in-line function) being returned by name.– Tin-Pui
Nov 20 '18 at 9:32
You can use the following static method to test if an Object is a null representation of its type.
qn(rowValue);
Note that the at()
method actually calls the qn()
method and returns a Java null
if the value in kdb is null. So it should have appeared as "null" instead of "func". Having a "func" returned implies that it was a kdb symbol `func
. Alternatively it could be a lambda (in-line function) being returned by name.– Tin-Pui
Nov 20 '18 at 9:32
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53322107%2fquery-kdb-with-java%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown