【问题标题】:How to check list size in Android如何在 Android 中检查列表大小
【发布时间】:2017-07-01 16:33:15
【问题描述】:

我想从服务器获取列表数据并将其显示到我的应用程序中,为了获取列表数据,我在 Adapter 中编写以下代码:

    if (model.get(position).getAwards() != null || model.get(position).getAwards().size() > 0) {
        int wonTimes = model.get(position).getAwards().get(0).getWonTimes();
        int nominatedTimes = model.get(position).getAwards().get(0).getNominatedTimes();

但是当运行应用程序时显示这个错误

java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
at java.util.ArrayList.get(ArrayList.java:308)

并将此错误显示到此行:

        int wonTimes = model.get(position).getAwards().get(0).getWonTimes();
        int nominatedTimes = model.get(position).getAwards().get(0).getNominatedTimes();

我从 json 提交的奖项:

"award": [],

在将奖励项目设置为int 值之前,我检查了列表大小。
为什么运行应用程序显示错误?

【问题讨论】:

    标签: android list arraylist


    【解决方案1】:

    而不是||添加 && 它会正常工作

    喜欢

    if (model.get(position).getAwards() != null && model.get(position).getAwards().size() > 0)
    

    【讨论】:

    • 感谢我的朋友,它对我有用。你能告诉我什么是尊重||和 && ?你能说我的朋友吗?
    • 如果使用||,如果第一项为真则进入条件内,不会检查第二个条件。
    猜你喜欢
    • 2022-01-12
    • 2014-06-05
    • 2021-02-04
    • 2012-05-13
    • 2015-05-22
    • 1970-01-01
    • 2019-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多