Java调用类方法,调用方法里面的“不兼容类型”

时间:2013-05-28 21:56:26

标签: java string methods boolean

/ **来自我的主要课程和方法* /

String ans = null;
    System.out.println("Has your address changed?(y/n): " );
    ans = input.next();
    munozAccount.changeAddress(ans); 
来自main方法调用的会计类的

/ ** message say required:boolean found:java.lang.String * /

public void changeAddress(String ans) {
    if (ans = "y") {
        cust.changeStreet();
        cust.changeCity();
        cust.changeState();
        cust.changeZip();
    } else {
        System.out.print("understood");
    }
}

1 个答案:

答案 0 :(得分:4)

您已在此行中使用了赋值运算符=

if (ans = "y") {

...结果类型为String,但boolean语句需要if,因此错误。

使用equals method of String比较字符串值,这将返回boolean

if ("y".equals(ans)) {

如果您说"y"NullPointerExceptionans.equals("y")ans首先会避免导致null