根据传递给object的参数获取值

时间:2015-08-18 17:01:04

标签: java arrays core

我有一个场景,我必须根据参数中传递的值返回值。这是我的代码。

package p_java_works;
public class city_if {
    public String a, b, c, d, z;
    String Method1(String aa, String bb, String cc) {
        a = aa;
        b = bb;
        c = cc;
        d = "USA";
        if (c == d) {
            return a;
        } else {
            return null;
        }
    }
    public static void main(String[] args) {
        city_if x = new city_if();
        String t = x.Method1("chris", "NY", "USA");

        city_if y = new city_if();
        String t1 = y.Method1("neil", "LND", "UK");
        System.out.println(t);
        System.out.println(t1);
    }
}

输出: 克里斯 空

输出返回NULL。我应该只获得来自美国的另一条记录,即英国不应该在输出屏幕上返回。提前谢谢。

1 个答案:

答案 0 :(得分:4)

当您使用==方法时,您正在将字符串与.equals()运算符进行比较。

c只有在内存中引用相同的字符串时才会等于cc