日期:2014-05-18  浏览次数:20598 次

大家来看看一个空指针异常
实体类(简写):
public class TradeRecord implements java.io.Serializable {
   private int id;
   private Integer tradeType;

   public void setId(int id) {
this.id = id;
   }
   public int getId() {
return id;
   }

   public Integer getTradeType() {
return this.tradeType;
   }

   public void setTradeType(Integer tradeType) {
this.tradeType = tradeType;
   }
}

Struts的Action里这样写:
System.out.println(record==null);
int type=record.getTradeType();

结果是第一句输出了false,而第二句出了空指针异常
------解决方案--------------------
引用:
Quote: 引用:

你debug 看看。

看了确实不是null,我也解决了,方法是把Integer换成int
可是我不明白为啥出了这样一个问题

因为int默认值是0,Integer是类,它产生的对象初始值是null。
int可以接受0,不会接受一个null。