Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 基于传递给对象的参数获取值_Java_Arrays_Core - Fatal编程技术网

Java 基于传递给对象的参数获取值

Java 基于传递给对象的参数获取值,java,arrays,core,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) {

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

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。我应该只得到来自美国的记录,这里的其他记录,即英国,不应该在输出屏幕上返回。提前感谢。

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


c
仅当它们引用内存中的同一字符串时才会等于
cc

即使使用.equals,我也希望代码返回传递的名称。因此,对于不相等的记录,它获取一个null并返回它,这在输出中是不需要的。我只是希望成员来自美国。那么你要么需要重组你的代码来实现这个@kannanaradhakrishnan,要么问另一个关于这个问题的问题。为什么你认为不应该打印null?如果
t1
为空,那么在执行System.out.println(t1)时会发生什么;只是一个旁注:您应该真正了解代码样式约定/实践。是的,我不知道在其他部分给出什么。也就是说,y将some值设为null。请为我的代码提供警报解决方案。