Android 将已解析的数组传递给主活动

Android 将已解析的数组传递给主活动,android,arrays,json,Android,Arrays,Json,你好,我是android新手,这就是我的问题。 我有一个活动,其中我有加载Json文件的方法 还有一种方法,我将该文件解析为数组对象。 对象[具有构造函数的类]的名称为“hotelSummary” 这就是我的解析方法: 公共酒店摘要[]解析JSON(){ String s=loadJSONFromAsset(); HotelSummary CloseHotelArray[]={}; 试一试{ JSONObject rootJSON=新的JSONObject; JSONArray hotelsJS

你好,我是android新手,这就是我的问题。 我有一个活动,其中我有加载Json文件的方法 还有一种方法,我将该文件解析为数组对象。 对象[具有构造函数的类]的名称为“hotelSummary”

这就是我的解析方法:

公共酒店摘要[]解析JSON(){

String s=loadJSONFromAsset();
HotelSummary CloseHotelArray[]={};
试一试{
JSONObject rootJSON=新的JSONObject;
JSONArray hotelsJSON=rootJSON.getJSONObject(“hotellistreponse”).getJSONObject(“HotelList”).getJSONArray(“HotelSummary”);
closeHotelsArray=newHotelSummary[hotelsJSON.length()];
对于(int i=0;i
你可以看到它返回给我数组

现在我想把这个数组传给我的主要活动 将其连接到我的listview 我怎样才能通过阵列

谢谢你的帮助
很抱歉英文不好。

您可以将此方法放置在mainActivity中,然后调用它将返回所需的数组。是否有任何限制使您无法将其放在主活动中?

我更喜欢保持我的主活动“干净”,并在其他类中执行此操作,然后只传递准备好的数组以显示它,然后您可以将此方法设置为静态,以便直接从其他活动访问它。这将是最简单的方法!结构可以是这样的:
public类myParsingClass{public static HotelSummary[]parseJson(){//your parsing method here}}
然后可以从主活动中调用它作为
HotelSummary[]myHotelSummary=myParsingClass.parseJson()
    String s = loadJSONFromAsset();

    HotelSummary closeHotelsArray[] = {};


    try {

        JSONObject rootJSON = new JSONObject(s);

        JSONArray hotelsJSON = rootJSON.getJSONObject("HotelListResponse").getJSONObject("HotelList").getJSONArray("HotelSummary");

        closeHotelsArray = new HotelSummary[hotelsJSON.length()];

        for (int i = 0; i < closeHotelsArray.length; i++) {


            JSONObject jsonObject = hotelsJSON.getJSONObject(i);

            HotelSummary hs = new HotelSummary();
            hs.address1 = jsonObject.getString("address1");
            hs.airportCode = jsonObject.getString("airportCode");
            hs.hotelId = jsonObject.getInt("hotelId");
            hs.confidenceRating = jsonObject.getInt("confidenceRating");
            hs.hotelRating = jsonObject.getInt("hotelRating");
            hs.lowRate = jsonObject.getInt("lowRate");
            hs.name = jsonObject.getString("name");
            hs.order = jsonObject.getInt("order");
            hs.proximityDistance = jsonObject.getDouble("proximityDistance");
            hs.proximityUnit = jsonObject.getString("proximityUnit");
            hs.thumbNailUrl = jsonObject.getString("thumbNailUrl");

            closeHotelsArray[i]= hs;

        }

    }catch (JSONException e) {
        e.printStackTrace();
    }


    return closeHotelsArray;

}