从java中的json数组中获取特定值

从java中的json数组中获取特定值,java,json,Java,Json,代码是用java编写的 JSONArray resultArray = (JSONArray)resultObject; String str = (resultArray.get(0).toString()) 现在我有一个字符串,如下所示 { "styleId": "2276730", "price": "$199.95", "originalPrice": "$199.95", "colorId": "401", "productName": "Mu

代码是用java编写的

JSONArray resultArray = (JSONArray)resultObject;
String str = (resultArray.get(0).toString())
现在我有一个字符串,如下所示

{
    "styleId": "2276730",
    "price": "$199.95",
    "originalPrice": "$199.95",
    "colorId": "401",
    "productName": "Mutiny",
    "productId": "8149427",
    "percentOff": "0%"
},
我想知道每个这样的数组的price值

我是JSON的新手。有人能帮我吗?

JSONArray resultArray=(JSONArray)resultObject;
JSONArray resultArray = (JSONArray) resultObject;
for (int i=0;i<resultArray.length();i++){
    JSONObject result = resultArray.getJSONObject(i);
    System.out.println(result.getString("price"));
}

例如(int i=0;您提供的示例“JSON”不是数组(它是一个对象),甚至不是有效的对象,因为后面有多余的逗号。请提供一个完整的示例,重现确切的问题。他说这是JSONArrayy的一项,在您获得所需的对象之前,您不应该执行字符串操作(如果有)。假设原始的是JSONArray,
get
按数字获取元素,将结果强制转换为JSONObject,然后对其执行
get(“price”)
。这将直接返回一个包含price.JSONObject result=array.getJSONObject(i)的字符串;我能知道数组在这里指的是什么吗?这是一个输入错误,我已经更正了。当然它应该是
resultArray
是的。我也认为它是resultArray,但当我运行代码时,ide没有识别getJSONObject方法。我检查了导入,但没有任何用处。getString方法也没有被识别。我运行了cod您是否在文件头添加了“import org.json.JSONObject;”和“import org.json.JSONArray;”?
getString
是JSONObject的有效方法请注意,使用“JSONObject”和“JSONArray”的json工具包完全不同。