当前位置:编程学习 > JAVA >>

java三目运算

Vector vt = gathering.loadRePay(clientId,salerid,currencytype);
vt = vt==null?new Vector():vt;
BigDecimal gaMoney = new BigDecimal(money);
BigDecimal beMoney = new BigDecimal(money);
  求这一段代码解释!! java --------------------编程问答-------------------- 如果vt为空的话则new 一个Vector。vt指向这个new出来的对象,如果不为空的话则vt = vt,其实这个还是不用三目运算的好,只要一个if语句不要else --------------------编程问答-------------------- vt = vt==null?new Vector():vt;
等价于
if(vt == null)
  vt = new Vector(); --------------------编程问答-------------------- 看到代码理不清楚的时候,用括号分开,就好理解了,多查查资料 --------------------编程问答--------------------
引用 2 楼 a12939026 的回复:
vt = vt==null?new Vector():vt;
等价于
if(vt == null)
  vt = new Vector();



+++ --------------------编程问答--------------------

Vector vt = gathering.loadRePay(clientId,salerid,currencytype);
if(vt==null){
    vt = new Vector();
}
BigDecimal gaMoney = new BigDecimal(money);
BigDecimal beMoney = new BigDecimal(money);
--------------------编程问答-------------------- vt = vt==null?new Vector():vt;
--------------------------------------------------
if(vt==null){
    vt = new Vector();
} --------------------编程问答--------------------
三目运算符,本猫的最爱。 --------------------编程问答-------------------- --------------------编程问答--------------------
引用 楼主 wangpan1202 的回复:
Vector vt = gathering.loadRePay(clientId,salerid,currencytype);
vt = vt==null?new Vector():vt;
BigDecimal gaMoney = new BigDecimal(money);
BigDecimal beMoney = new BigDecimal(money);
……


就是为了防止vt出现空指针异常。。。 --------------------编程问答--------------------
引用 1 楼 chengxu2011 的回复:
如果vt为空的话则new 一个Vector。vt指向这个new出来的对象,如果不为空的话则vt = vt,其实这个还是不用三目运算的好,只要一个if语句不要else


++ --------------------编程问答--------------------
引用 6 楼 lyh_974056553 的回复:
vt = vt==null?new Vector():vt;
--------------------------------------------------
if(vt==null){
    vt = new Vector();
}

+10086 --------------------编程问答--------------------
引用 2 楼 a12939026 的回复:
vt = vt==null?new Vector():vt;
等价于
if(vt == null)
  vt = new Vector();

其实这是有错误的 人家是三目运算 你把else去掉了
应该改if(vt == null)
{
vt = new Vector();
}else
{
vt  = vt
}
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,