在开关的情况下如何使用&&?我想将此if-else转换为switch-case。请帮助我,我尝试了很多选择,但没有任何作用。
if( bpay <= 90000 && bpay >= 85000 )
{
System.out.println("You Job is General Manager");
}
if( bpay <= 84999 && bpay >= 75000 )
{
System.out.println("Your Job is Manager" );
}
if ( bpay <= 74999 && bpay >= 65000 )
{
System.out.println("Your Job is Assistant Manager ");
}
if ( bpay <= 64999 && bpay >= 55000 )
{
System.out.println("Your Job is Accoutant");
}
if( bpay <= 54999 && bpay >= 40000 )
{
System.out.println("Your Job is Clerk");
}
if( bpay < 40000 )
System.out.println("You Job is Security Incharge");
答案 0 :(得分:1)
这在Java中是不可能的。 Switch旨在识别独特的情况。
P.S-既然您正在使用android,请尝试Kotlin。 您可以使用when(基本上是switch but with superpowers)在kotlin中实现。 例如:
when(bpay) {
in 40000..55000 -> println("Your Job is Clerk")
in 55000..65000 -> println("Your Job is Accoutant")
//Similarly for the rest
}
答案 1 :(得分:1)
不能。 Java语言不支持此功能。它可能适用于其他人,但不适用于此。大小写必须是整数,字符串或枚举。这不是布尔语句
答案 2 :(得分:0)
切换大小写不适用于范围,而是适用于完全匹配或常数值。
因此,您不能将其转换为大小写转换,您必须在此处使用if-else
答案 3 :(得分:0)
如上所述,这是不可能的。而是使用if-else-if
:
if ( bpay <= 90000 && bpay >= 85000 ) {
System.out.println("You Job is General Manager");
} else if( bpay <= 84999 && bpay >= 75000 ) {
System.out.println("Your Job is Manager" );
} else if ( bpay <= 74999 && bpay >= 65000 ) {
System.out.println("Your Job is Assistant Manager ");
} else if ( bpay <= 64999 && bpay >= 55000 ) {
System.out.println("Your Job is Accoutant");
} else if( bpay <= 54999 && bpay >= 40000 ) {
System.out.println("Your Job is Clerk");
} else if( bpay < 40000 ) {
System.out.println("You Job is Security Incharge");
}