Java 短if语句用法

Java 短if语句用法,java,python,Java,Python,在python中,我可以执行以下操作: return x or y 或 如果x!=null或not empty将返回或传递xelsey 我的问题: 在java中有一种方法可以做到这一点 返回x==null?y:x或 myFunction(x == null ? y : x) 好的,我想你要做的是传递 x==null?y:x 作为函数的参数 我在堆栈溢出上发现了以下内容: . 也许这会有帮助 简而言之:myFunction(x==null?y:x);应该很好。我相信三元法是最有效和最短的。但是

在python中,我可以执行以下操作:

return x or y

如果
x!=null
或not empty将返回或传递
x
else
y

我的问题:

在java中有一种方法可以做到这一点
返回x==null?y:x

myFunction(x == null ? y : x)

好的,我想你要做的是传递

x==null?y:x

作为函数的参数

我在堆栈溢出上发现了以下内容: . 也许这会有帮助


简而言之:myFunction(x==null?y:x);应该很好。

我相信三元法是最有效和最短的。但是,如果您想进一步缩短时间,您可以根据您的情况创建一个通用的静态或非静态方法来验证这两个对象。然后只返回已验证的方法,而不是三元条件。举个例子

//usage
Employee valid(Employee x, Employee y) {
    return v(x,y);
}

//generic method for validation
<T> T v(T o1, T o2) {
    return o1==null?o2:o1;
}
//用法
员工有效(员工x、员工y){
返回v(x,y);
}
//通用验证方法
tV(tO1,tO2){
返回o1==null?o2:o1;
}

您使用的是什么python版本?我不确定我是否理解您的实际要求。我甚至不确定
x | | | y
在任何python版本中作为表达式是否有效,它通常是
x如果x或者y
@JoachimIsaksson,您是对的,它不是,这就是为什么我要问的原因,但这仍然不能帮助我们尝试弄清楚Java中的目标是什么:)是的,但我的问题是,有一种方法可以比python中的myFunction(x==null?y:x)缩短吗
//usage
Employee valid(Employee x, Employee y) {
    return v(x,y);
}

//generic method for validation
<T> T v(T o1, T o2) {
    return o1==null?o2:o1;
}