我无法将对象添加到集合中。
当我尝试将对象添加到集合时,我遇到了java.lang.NullPointerException。
我测试并检查了使用if条件的RedemptionEntity的兑换不为空,如下面的代码所示。它返回“Not NULL !!!!!!!!!”
当你尝试将一些null的东西添加到集合中时,我发现了java.lang.NullPointerException。但在这种情况下,我不认为赎回是空的。 System.out.println(ex.getMessage());给我一个空的。
如何解决此问题?这里有什么帮助吗?
private Collection<RedemptionEntity> redemptionCollection;
RedemptionEntity redemption = new RedemptionEntity();
GiftEntity GIFT = em.find(GiftEntity.class, gift);
redemption.create(date, 0);
redemption.setGift(GIFT);
em.persist(redemption);
if (redemption == null) {
System.out.println("NULL!!!!!!!!");
} else {
System.out.println("Not NULL!!!!!!!!");
}
try {
redemptionCollection.add(redemption); //This line is where the exception occurs...
} catch (Exception ex) {
System.out.println(ex.getMessage());
ex.printStackTrace();
}
答案 0 :(得分:2)
Collection是一个界面。使用ArrayList或其他List类型进行初始化。
ArrayList<RedemptionEntity> col = new ArrayList<RedemptionEntity> ();
或
Collection<RedemptionEntity> col = new ArrayList<RedemptionEntity> ();
答案 1 :(得分:1)
你是否初始化了你的收藏?
private Collection<RedemptionEntity> redemptionCollection = new ArrayList<RedemptionEntity>();
会起作用。
答案 2 :(得分:0)
你必须使用其中一个实现Collection Interface的类: Set,List,Map,SortedSet,SortedMap,HashSet,TreeSet,ArrayList,LinkedList,Vector,Collections,Arrays,AbstractCollection