[英]Java Warnings for fields in Domino / XPages
我的xpages中有很多这样的警告:
描述资源路径位置类型类型安全性:Vector类型的表达式需要未经检查的转换才能符合List CustomerDominoDAO.java /db.nsf/WebContent/WEB-INF/src/se/acme/customer/dao行198 Java问题
mailList.setPhones(doc.getItemValue("phones"));
哪里
private List<String> phones =new List<String>();
我使用的是错误的类型还是应该只禁止显示这些警告?
通常,您可以禁止显示这些警告。 核心Java API从未针对Java 5泛型进行过更新,因此从这些方法返回的所有Vector
都等效于Vector<Object>
并且没有类型安全的方法来获取它。
就是说, 最安全的做法是实际上遍历返回的List
并执行String.valueOf
,因为假设它们在那里可能是Double
或DateTime
值。 在实践中,通常这并不是真正的威胁,但是我认为可以在Java 8上执行以下操作: doc.getItemValue("phones").stream().map(String::valueOf).collect(Collectors.toList())
。
另外,如果您使用OpenNTF Domino API,则存在一个getItemValues(String name, Class<T> type)
,它将进行必要的转换和转换,并直接返回真实的List<String>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.