Java 如果(specialmarkId!=null){….}被忽略
我使用的是使用Java1.8自动生成的NetBeans8的Java 如果(specialmarkId!=null){….}被忽略,java,sql,jpa,Java,Sql,Jpa,我使用的是使用Java1.8自动生成的NetBeans8的JPAController public void create(Physical physical) { if (physical.getTalentCollection() == null) { physical.setTalentCollection(new ArrayList<Talent>()); } EntityManager em = nul
JPAController
public void create(Physical physical) {
if (physical.getTalentCollection() == null) {
physical.setTalentCollection(new ArrayList<Talent>());
}
EntityManager em = null;
try {
em = getEntityManager();
em.getTransaction().begin();
Specialmark specialmarkId = physical.getSpecialmarkId();
System.out.println(specialmarkId+ "...nullValue");
if (specialmarkId != null) {
System.out.println(specialmarkId+ "...ain't right");
specialmarkId = em.getReference(specialmarkId.getClass(), specialmarkId.getId());
physical.setSpecialmarkId(specialmarkId);
}
.....
}
输出“null…不正确”
显示如果(specialmarkId!=null){…}
被忽略,即使specialmarkId
为null
为什么
(specialmarkId!=null){…}
不起作用?我想specialmarkId
不是真的为null,但是specialmarkId.toString()
会被覆盖以返回字符串“null”
而不是
System.out.println(specialmarkId+ "...nullValue");
试试像这样的东西
System.out.println((specialmarkId != null?
specialmarkId.toString() + "(not null)": "(this IS REALLY NULL)")
+ "...nullValue");
您知道如何添加断点并检查变量吗?如果没有,那么您应该学习如何调试,因为您将需要它。
System.out.println((specialmarkId != null?
specialmarkId.toString() + "(not null)": "(this IS REALLY NULL)")
+ "...nullValue");