在Java的String.class中,我看到了这一点
public String substring(int beginIndex, int endIndex){
//if statements
return ((beginIndex == 0) && (endIndex == count)) ? this:
new String (offset + beginIndex, endIndex - beginIndex, value);
}
Run Code Online (Sandbox Code Playgroud)
是什么 '?' 在做什么?当我们讨论这个主题时,是否有人可以解释在返回语句中使用'new String'发生的事情?这是某种有条件的吗?
它是一个三元运算符,它相当于:
if((beginIndex == 0) && (endIndex == count)) {
return this;
} else {
return new String (offset + beginIndex, endIndex - beginIndex, value);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
180 次 |
| 最近记录: |