加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java类,具有多种类型的Arraylist

发布时间:2020-12-15 02:58:33 所属栏目:Java 来源:网络整理
导读:我是 Android和 Android的新手Java并且有关于我的服务器应用程序通信的问题.我的服务器总是返回带有“Code”,“Message”和“Data”的JSON输出.像这样: e.g: {"code":200,"msg":"success","data":[{"track_id":123},{"track_id":124},{"track_id":125}]}e.g
我是 Android和 Android的新手Java并且有关于我的服务器应用程序通信的问题.我的服务器总是返回带有“Code”,“Message”和“Data”的JSON输出.像这样:
e.g: {"code":200,"msg":"success","data":[{"track_id":123},{"track_id":124},{"track_id":125}]}
e.g: {"code":200,"data":[{"type":"car","length":100},{"type":"train","length":500},{"type":"foot","length":3}]}

我想使用这样的类来处理数据:

public class ServerResponse {
    private int code;
    private String msg;
    private List<> data;
}

但这是我的问题.我不想给列表中的“car”,“login”等特定类型.根据我的要求,我想创建一个带有List-Type“car”的ServerResponse-class,另一个带有List-Type“Locations”等.

有没有办法将类ServerResponse与多种类型的ArrayLists一起使用,或者我是否必须为我想要使用的每个列表类型多次复制此类?

对不起,如果这里已有解决方案,但我不知道我要搜索什么.而对于我搜索的内容,我找不到适合的解决方案.

最好的祝福
迈克尔

解决方法

查看Java Generic Types.
public class ServerResponse<T> { 
    private int code;
    private String msg;
    private List<T> data;
}

T可以是您想要的任何类型,因此您的列表将是该类型.然后你的getter / setter方法可以返回或接受类型T.

现在让我们假设您的响应是针对Car对象的.你会这样做的

private ServerResponse<Car> mCarResponse = new ServerResponse<>();

现在,您可以像这样在ServerResponse类中放置一个方法.

public class ServerResponse<T> { 
    private int code;
    private String msg;
    private List<T> data;

    public List<T> getResponSEObjectList(){
        return data;
    }
}

您现在将获得一个List< Car>宾语.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读