簡體   English   中英

Java ArrayList對象未獲取項目的FinalList計數

[英]Java ArrayList of Objects not getting the FinalList of items count

我正在研究一個Java代碼,它將檢索所有類別和類別中的相應媒體。 我正確地獲得了所有類別的列表,但是里面沒有媒體。 媒體總數為600+。 獨立的正確打印計數。 但最后它僅返回226。請幫助我解決此問題。 提前致謝。

private static List<KalturaCategoryEntry> getCategoryMedia(
        List<KalturaCategory> openCategoryList) throws KalturaApiException,
        ParseException {
    List<KalturaCategoryEntry> categoryEntries = new ArrayList<KalturaCategoryEntry>();
    for (KalturaCategory category : openCategoryList) {
        KalturaCategoryEntryFilter categoryEntryFilter = new KalturaCategoryEntryFilter();
        categoryEntryFilter.categoryIdEqual = category.id;
        // categoryEntryFilter.statusEqual =
        // KalturaCategoryEntryStatus.ACTIVE;
        KalturaCategoryEntryListResponse categoryEntryList = getCategoryEntry(categoryEntryFilter);
        if (categoryEntryList.totalCount != 0) {
            System.out.println("categoryEntryList.totalCount ------>"
                    + categoryEntryList.totalCount);
            for (KalturaCategoryEntry entry : categoryEntryList.objects) {
                if (entry != null) {
                    categoryEntries.add(entry);
                }
            }
        }
    }
    System.out.println("Total Media ------- >" + categoryEntries.size());
    return categoryEntries;
}

這是輸出:

categoryEntryList.totalCount ------>368
categoryEntryList.totalCount ------>2
categoryEntryList.totalCount ------>8
categoryEntryList.totalCount ------>2
categoryEntryList.totalCount ------>1
categoryEntryList.totalCount ------>17
categoryEntryList.totalCount ------>18
categoryEntryList.totalCount ------>1
categoryEntryList.totalCount ------>53
categoryEntryList.totalCount ------>37
categoryEntryList.totalCount ------>1
categoryEntryList.totalCount ------>2
categoryEntryList.totalCount ------>1
categoryEntryList.totalCount ------>7
categoryEntryList.totalCount ------>7
categoryEntryList.totalCount ------>6
categoryEntryList.totalCount ------>53
categoryEntryList.totalCount ------>2
categoryEntryList.totalCount ------>39
categoryEntryList.totalCount ------>1
Total Media ------- >226

可能在categoryEntryList.totalCountcategoryEntryList.objects.size()之間存在差異

嘗試改變你的

System.out.println("categoryEntryList.totalCount ------>"
                    + categoryEntryList.totalCount);

System.out.println("categoryEntryList.totalCount ------>"
                    + categoryEntryList.objects.size());

您將擁有真正的數量。

嘗試

if (categoryEntryList.totalCount != 0) {
    System.out.println("categoryEntryList.totalCount ------>"
            + categoryEntryList.totalCount);
    for (KalturaCategoryEntry entry : categoryEntryList.objects) {
        categoryEntries.add(entry);
    }
}

代替

if (categoryEntryList.totalCount != 0) {
    System.out.println("categoryEntryList.totalCount ------>"
            + categoryEntryList.totalCount);
    for (KalturaCategoryEntry entry : categoryEntryList.objects) {
        if (entry != null) {
            categoryEntries.add(entry);
        }
    }
}

如果得到不同的結果,則按照@sᴜʀᴇsʜ的建議,您的對象列表中有null值, categoryEntryList.totalCount無法正確管理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM