Android中的Else If语句问题

时间:2015-03-11 10:53:54

标签: android

我正在研究这个程序,它使用了几行代码,这些代码最后一次使用它们,但这次唯一的区别是我需要使用else if而不是基本的if else语句。仍然试图学习如何真正使用这个,但任何帮助将不胜感激。我的错误源于if语句,我觉得它与float结果有关;线。

    private float caravan = 35;
private float wigwag = 25;
private float tent = 15;

private float caravan(float value){
    return value * caravan;
}
private float wigwag(float value){
    return value * wigwag;
}
private float tent(float value){
    return value * tent;
}

Button bookButton;
public void onClick(View view) {
    EditText bookAmount = (EditText)findViewById(R.id.txtNights);
    EditText bookFinal = (EditText)findViewById(R.id.txtBooked);
    float bookResult = Float.parseFloat(bookAmount.getText().toString());
    float result;

    RadioButton cbSelected = (RadioButton)findViewById(R.id.radCaravan);

    if(cbSelected.isChecked()){
        result = caravan(bookResult);
    } else if (result == wigwag(bookResult)){

    } else if (result == tent(bookResult)){

    }
    bookFinal.setText(String.valueOf(result));

}

2 个答案:

答案 0 :(得分:2)

您的问题是您在语句结尾处加了分号,并且您没有使用==运算符:

if(cbSelected.isChecked()){
        result = caravan(bookResult);
    } else if (result = wigwag(bookResult);{

    } else if (result = tent(bookResult);{

    }

通过删除分号并使用相等运算符进行修复:

if(cbSelected.isChecked()){
        result = caravan(bookResult);
    } else if (result == wigwag(bookResult){

    } else if (result == tent(bookResult){

    }

答案 1 :(得分:1)

使用==代替=运算符

if (result == wigwag(bookResult))