在我的控制器类中,我对我的模型进行了以下检查。有人请注意并解释一下,如果model属性不为null,是否会创建一个新的模型属性
Object modelObj=pr.getPortletSession().getAttribute("tickets_from_Model");
TicketModel ticketmodel=modelObj!=null ? (TicketModel)modelObj:new TicketModel();
请在
行中解释?
和:
答案 0 :(得分:4)
是三元运算符
condition ? if condition is true execute this code : else this code
例如:
int i = 0;
String str =( i==0 ? "i is equal to zero" : "i is non zero");
答案 1 :(得分:1)
要更清楚一点,?和:是ternary operator的组成部分。当使用三元运算符时,将条件放在?之前,如果条件在?之后为真,则执行语句;如果在':'之后条件为假则执行语句。所以它的行为如下:
if condition ? then do this : else do this.
isRunning ? doSomething() : doSomethingElse();