Java 如何将JSONArray转换为字符串/浮点值
我正在构建一个android应用程序,它使用HTTP请求来使用web API。我已经很容易地提出了请求,一切都很好,但是我找不到一种方法将我得到的JSONArray转换为单浮点x,浮点y值。 欢迎任何帮助 API的外观: 我的代码:Java 如何将JSONArray转换为字符串/浮点值,java,android,json,okhttp,Java,Android,Json,Okhttp,我正在构建一个android应用程序,它使用HTTP请求来使用web API。我已经很容易地提出了请求,一切都很好,但是我找不到一种方法将我得到的JSONArray转换为单浮点x,浮点y值。 欢迎任何帮助 API的外观: 我的代码: @Override public void onResponse(Call call, Response response) throws IOException { try { JSONObject jso
@Override
public void onResponse(Call call, Response response) throws IOException {
try {
JSONObject jsonObj = new JSONObject(response.body().string());
// Getting JSON Array node
JSONArray price = jsonObj.getJSONArray("price");
for(int I = 0; I < price.length(); I++) {
Float x ;
Float y ;
values.add(new Entry(x,y)); // add one entry per hour
}
} catch (JSONException e) {
e.printStackTrace();
}
}
});
@覆盖
public void onResponse(调用调用、响应响应)引发IOException{
试一试{
JSONObject jsonObj=新的JSONObject(response.body().string());
//获取JSON数组节点
JSONArray price=jsonObj.getJSONArray(“价格”);
对于(int I=0;I
您可以简单地使用以下方法:
JsonArray jArr = price.getJSONArray(I);
values.add(new Entry((float)jArr.getDouble(0), (float)jArr.getDouble(1)));
另外,您需要检索的
价格应该在jsonObject中,而不是在另一个数组中。只需使用以下方法即可:
JsonArray jArr = price.getJSONArray(I);
values.add(new Entry((float)jArr.getDouble(0), (float)jArr.getDouble(1)));
另外,您需要检索的price
应该在jsonObject中,而不是在另一个数组中。您是否尝试过类似的方法:
private void getPricesArray(){
ArrayList<Double[]> pricesDoubleArray = new ArrayList<>();
for (int index = 0; index < pricesDoubleArray.size(); index++) {
pricesDoubleArray.get(index)[0] = Double.valueOf(16748584949L); //
pricesDoubleArray.get(index)[1] = 4506.45; //
}
}
private void getPricesArray(){
ArrayList pricesDoubleArray=新ArrayList();
对于(int index=0;index
您是否尝试过类似的:
private void getPricesArray(){
ArrayList<Double[]> pricesDoubleArray = new ArrayList<>();
for (int index = 0; index < pricesDoubleArray.size(); index++) {
pricesDoubleArray.get(index)[0] = Double.valueOf(16748584949L); //
pricesDoubleArray.get(index)[1] = 4506.45; //
}
}
private void getPricesArray(){
ArrayList pricesDoubleArray=新ArrayList();
对于(int index=0;index
感谢您的回复!新条目只接受浮点值,但没有getFloat选项,我如何实现这一点?@VaclovasRekašiusJr。你们可以改变输入类型,任何方式检查更新,你们可以得到浮点值。谢谢你们的回复,真的帮了我很多。但是,通过更改此行的值来更新您的答案。添加(新条目((float)jArr.getDouble(0),(float)jArr.getDouble(1));移除拳击,只需将其铸造成漂浮物就可以了。再次感谢。@VaclovasRekašiusJr。很高兴为您提供帮助。谢谢您的回复!新条目只接受浮点值,但没有getFloat选项,我如何实现这一点?@VaclovasRekašiusJr。你们可以改变输入类型,任何方式检查更新,你们可以得到浮点值。谢谢你们的回复,真的帮了我很多。但是,通过更改此行的值来更新您的答案。添加(新条目((float)jArr.getDouble(0),(float)jArr.getDouble(1));移除拳击,只需将其铸造成漂浮物就可以了。再次感谢。@VaclovasRekašiusJr。很乐意帮忙。