我正在查看一段包含以下内容的Java代码:
User rv = tmp != null && tmp.size() > 0 ? tmp.get(0) : null;
Run Code Online (Sandbox Code Playgroud)
我对Java语法不是很强.我的理解是,rv = tmp只要tmp是null tmp的size是> 0,要不就等于null.我对么?
这是这个表达的"解剖学":
rv = // assignment of a conditional expression
(tmp != null && tmp.size() > 0) // condition
? tmp.get(0) // on true
: null; // on false
Run Code Online (Sandbox Code Playgroud)
这是确保列表中没有异常访问元素零的常用方法:条件确保tmp不是null,并且大小是一个或多个.