[英]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.totalCount
和categoryEntryList.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.