过载最终字符串是可能的?

时间:2012-10-15 02:07:17

标签: java overloading

我创建了一个带有2个方法的类,一个可以取3个参数而另一个可以取4个...所有参数都声明为final ..

然后我写了这个

    if (b == "Select") {
        myobj.print(a, b, c, d);
    } else {
        myobj.print(a, b, c);
    }

它不起作用..

2 个答案:

答案 0 :(得分:2)

String是不可变的,你无法改变它们。

除非您使用String字面值,否则应始终使用.equals().equalsIgnoreCase()代替==来比较Strings/objects

答案 1 :(得分:1)

是的,带有额外String参数的方法的重载是:

  • 可能,
  • 有效的Java和
  • 它有效。

我的钱是基于这样的理论:您的问题与重载无关,实际上是由于您错误地使用==来测试两个字符串是否相等。