您的位置:首页 > 编程语言 > Java开发

java的if else if语句的判断条件不能相同

2016-03-01 21:23 489 查看
if else if语句的判断条件不能相同,否则后边else if的判断条件会自动忽略,如刚才做的代码,本来想通过设置-1来确定是否获取到对应字符的位置,如果未获取到,返回值为-1,在后边的else if的判断条件里继续判断。但是经过测试只能用下列形式实现。

if(fuhaoindex1==-1){
fuhaoindex1 = text.indexOf('+');
Log.i("tag", "这次是+号");
Log.i("tag", "第一次运算符号的位置"+String.valueOf(fuhaoindex1));
}
if (fuhaoindex1==-1) {
fuhaoindex1 = text.indexOf('-');
Log.i("tag", "这次是-号");
Log.i("tag", "符号的位置"+String.valueOf(fuhaoindex1));
}
if (fuhaoindex1==-1) {
fuhaoindex1 = text.indexOf('×');
Log.i("tag", "这次是×号");
}
if (fuhaoindex1==-1) {
fuhaoindex1 = text.indexOf('÷');
Log.i("tag", "这次是÷号");//这里要用单引号,注意
}

这样可以正常判断,但是如果
if(fuhaoindex1==-1){
fuhaoindex1 = text.indexOf('+');
Log.i("tag", "这次是+号");
Log.i("tag", "第一次运算符号的位置"+String.valueOf(fuhaoindex1));
}
else	if (fuhaoindex1==-1) {
fuhaoindex1 = text.indexOf('-');
Log.i("tag", "这次是-号");
Log.i("tag", "符号的位置"+String.valueOf(fuhaoindex1));
}
else	if (fuhaoindex1==-1) {
fuhaoindex1 = text.indexOf('×');
Log.i("tag", "这次是×号");
}
else	if (fuhaoindex1==-1) {
fuhaoindex1 = text.indexOf('÷');
Log.i("tag", "这次是÷号");//这里要用单引号,注意
}
就会只判断上边的+号部分,下边的所有判断自动跳过。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息