【发布时间】:2018-05-23 05:54:10
【问题描述】:
List<ExpenseDetailsWrapper> expenseDataList = reimbursementLocalService
.getAllExpenseByReimbursementId(reimbursementId);
long fileEntryId = 0;
String previewURL = StringPool.BLANK;
List<String> billUrlData = new ArrayList<String>();
List<String> finalMerge = new ArrayList<String>();
try {
for (int i = 0; i < expenseDataList.size(); i++) {
fileEntryId = expenseDataList.get(i).getFileEntryId();
if (fileEntryId > 0) {
FileEntry fileEntry = DLAppLocalServiceUtil.getFileEntry(fileEntryId);
previewURL = DLUtil.getPreviewURL(fileEntry, fileEntry.getFileVersion(), themeDisplay, StringPool.BLANK);
}
renderRequest.setAttribute("previewUrl", previewURL);
finalMerge.add(billUrlData);
finalMerge.add(expenseDataList);//**Error is here**The method addAll(Collection<? extends String>) in the type List<String> is not applicable for the arguments (List<ExpenseDetailsWrapper>)
LOG.info("File Entries"+fileEntryId);
}
LOG.info(billUrlData);
renderRequest.setAttribute("previewUrl", billUrlData);
renderRequest.setAttribute("expenseDataList", expenseDataList);
} catch (Exception e) {
e.printStackTrace();
}
我有一个带有 POJO 的列表和另一个带有 String 的列表。但是当我尝试将这两个列表添加到一个列表中时,它给了我错误 我可以附加两个不同类型的列表吗??
【问题讨论】:
-
将两种不同的类型添加到通用列表中通常是不好的做法。最大的原因:即使你被允许做你正在做的事情,它也不是 type safe,因为当你浏览那个列表时,你不知道你是否得到了一个字符串或细节包装。
标签: java list collections java-8