如何将数据从 SQLITE 数据库获取到 Android 中的数组?
很确定这是一个简单的问题,但我对所有将从游标返回的数据适应不同视图的示例感到困惑。 我只想运行一个原始查询并将返回的每一项数据放入一个浮点数组中(以便我稍后可以将它们相加)。我需要为此使用什么? 谢谢
Pretty sure this is an easy one, but i'm getting confused by all the examples that adapt the data returned from a cursor into different views. I just want to run a rawquery and put each item of data returned into a float array (so that i can add them up later). What do i need to use for this? Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当您查询数据库时,您仍然会有一个游标,但是一旦获得游标,您就可以对其进行迭代,将所需的值提取到数组中,如下所示:
You'll still have a cursor when you query your database, but once you got the cursor you could iterate over it, pulling out the values you need into an array, like this:
不要在
float[] myFloats = new float[cursor.getCount()-1];
中减 1,因为 (int i =0) 或 i 从 0 开始。如果使用它,将会出现Java.lang.IndexOutOfBoundsException
。您需要数组索引直到[cursor.getCount()]
,而不是直到[cursor.getCount()-1]
。所以正确的是float[] myFloats = new float[cursor.getCount()];
Don't minus by 1 in
float[] myFloats = new float[cursor.getCount()-1];
because (int i =0) or i start from 0. If you use it, will appearJava.lang.IndexOutOfBoundsException
. You need array index until[cursor.getCount()]
, not until[cursor.getCount()-1]
. So the correct thing isfloat[] myFloats = new float[cursor.getCount()];