Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 来自json android的多维数组_Java_Android_Arrays_Json_Multidimensional Array - Fatal编程技术网

Java 来自json android的多维数组

Java 来自json android的多维数组,java,android,arrays,json,multidimensional-array,Java,Android,Arrays,Json,Multidimensional Array,我这里有一个json: [ { "ID": "2", "Item Description": "Data removed for protection", "Link": "Data removed for protection", "Image": "Data removed for protection", "Valid From": "Data remov

我这里有一个json:

[
        {
            "ID": "2",
            "Item Description": "Data removed for protection",
            "Link": "Data removed for protection",
            "Image": "Data removed for protection",
            "Valid From": "Data removed for protection",
            "Valid To": "Data removed for protection"
        },
        {
            "ID": "3",
            "Item Description": "Data removed for protection",
            "Link": "Data removed for protection",
            "Image": "Data removed for protection",
            "Valid From": "Data removed for protection",
            "Valid To": "Data removed for protection"
        },
{
            "ID": "4",
            "Item Description": "Data removed for protection",
            "Link": "Data removed for protection",
            "Image": "Data removed for protection",
            "Valid From": "Data removed for protection",
            "Valid To": "Data removed for protection"
        }
    ]
所以我把它下载到一个名为
jArray
JSONObject
。然后我将其转换为
JSONArray
,如下所示:

JSONArray json_array = new JSONArray(jArray);
但是,每当我尝试这样访问它时:
json_array[0][0]
IDE就会在它上面抛出一个错误,并说:
array type expected;找到:“org.json.JSONArray”


现在,请不要误解我的意思,但是
JSONArray
不应该以同样的方式访问多维方面吗?

不,它不应该以同样的方式访问多维数组

这是因为
json\u array
不是一个数组,而是一个不同的Java对象。只有数组可以使用上面显示的特定语法进行访问。您需要查看此类的文档,以了解如何访问所需的信息。它应该提供清晰的、有良好文档记录的方法来获取您需要的东西

您不希望此语法允许您访问支持您的类的数组。这将是对封装的破坏,并且总体上是糟糕的设计


这里是一个很好的起点

不,它的行为方式不应该与多维数组相同

这是因为
json\u array
不是一个数组,而是一个不同的Java对象。只有数组可以使用上面显示的特定语法进行访问。您需要查看此类的文档,以了解如何访问所需的信息。它应该提供清晰的、有良好文档记录的方法来获取您需要的东西

您不希望此语法允许您访问支持您的类的数组。这将是对封装的破坏,并且总体上是糟糕的设计


这里是一个很好的起点

不,它的行为方式不应该与多维数组相同

这是因为
json\u array
不是一个数组,而是一个不同的Java对象。只有数组可以使用上面显示的特定语法进行访问。您需要查看此类的文档,以了解如何访问所需的信息。它应该提供清晰的、有良好文档记录的方法来获取您需要的东西

您不希望此语法允许您访问支持您的类的数组。这将是对封装的破坏,并且总体上是糟糕的设计


这里是一个很好的起点

不,它的行为方式不应该与多维数组相同

这是因为
json\u array
不是一个数组,而是一个不同的Java对象。只有数组可以使用上面显示的特定语法进行访问。您需要查看此类的文档,以了解如何访问所需的信息。它应该提供清晰的、有良好文档记录的方法来获取您需要的东西

您不希望此语法允许您访问支持您的类的数组。这将是对封装的破坏,并且总体上是糟糕的设计


这里是一个很好的起点

JSONArray
和普通的java数组不一样。
JSONArray
是一个不同的java对象@Kon的回答提供了
JSONArray
的基本概念

如果您想从
JSONArray
访问数据,可以循环访问它以获取每个
JSONObject
,然后从那里检索数据

JSONArray json_array = new JSONArray(jArray);

    for (int i = 0; i < json_array.length() ; i++) {
              try{
                    JSONObject object1 = jsonArray.getJSONObject(i);
                    int id = object1.getInt("ID");
                    String itemDescription = object1.getString("Item Description");     
                    String link = object1.getString("Link");
                    .....//and so on        
                 }
              catch(Exception e){
                    e.printStackTrace();
                    }
                 }
JSONArray json_数组=新的JSONArray(jArray);
for(int i=0;i
JSONArray
和普通java数组不一样。
JSONArray
是不同的java对象@Kon的回答提供了
JSONArray
的基本概念

如果您想从
JSONArray
访问数据,可以循环访问它以获取每个
JSONObject
,然后从那里检索数据

JSONArray json_array = new JSONArray(jArray);

    for (int i = 0; i < json_array.length() ; i++) {
              try{
                    JSONObject object1 = jsonArray.getJSONObject(i);
                    int id = object1.getInt("ID");
                    String itemDescription = object1.getString("Item Description");     
                    String link = object1.getString("Link");
                    .....//and so on        
                 }
              catch(Exception e){
                    e.printStackTrace();
                    }
                 }
JSONArray json_数组=新的JSONArray(jArray);
for(int i=0;i
JSONArray
和普通java数组不一样。
JSONArray
是不同的java对象@Kon的回答提供了
JSONArray
的基本概念

如果您想从
JSONArray
访问数据,可以循环访问它以获取每个
JSONObject
,然后从那里检索数据

JSONArray json_array = new JSONArray(jArray);

    for (int i = 0; i < json_array.length() ; i++) {
              try{
                    JSONObject object1 = jsonArray.getJSONObject(i);
                    int id = object1.getInt("ID");
                    String itemDescription = object1.getString("Item Description");     
                    String link = object1.getString("Link");
                    .....//and so on        
                 }
              catch(Exception e){
                    e.printStackTrace();
                    }
                 }
JSONArray json_数组=新的JSONArray(jArray);
for(int i=0;i
JSONArray
和普通java数组不一样