return a.x!=b.x? a.x<b.x:a.y>b.y;这种语法怎么理解
时间: 2024-02-21 14:02:02 浏览: 114
Java基础入门:掌握基本语法与概念2024最新0基础!!!易懂!!!.md
这种语法是三目运算符的嵌套使用。它的语法结构为:
```
条件表达式 ? 表达式1 : 表达式2
```
如果条件表达式为真,则整个表达式的值为表达式1的值,否则为表达式2的值。
在给定的代码中,三目运算符嵌套使用了两次。它的含义是,如果a的x成员变量不等于b的x成员变量,则根据它们的大小关系决定返回值;否则,比较它们的y成员变量的大小关系,根据它们的大小关系决定返回值。
可以把它还原成if-else的形式:
```
if (a.x != b.x) {
return a.x < b.x;
} else {
return a.y > b.y;
}
```
也就是说,如果a的x成员变量小于b的x成员变量,则返回true;如果它们的x成员变量相等,那么比较它们的y成员变量,如果a的y成员变量大于b的y成员变量,则返回true。
阅读全文