Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_String - Fatal编程技术网

Java 如何使以下字符串数组相等?

Java 如何使以下字符串数组相等?,java,arrays,string,Java,Arrays,String,如何使if语句为真,以便执行指令 String[] tab1 = new String[]{"abc"} String[] tab2 = new String[]{new String("abc")} if(tab1 == tab2){ ... } 解释 如果两个指定的对象数组彼此相等,则java.util.Arrays.equalsObject[]a,Object[]a2方法返回true。如果两个数组包含相同数量的元素,则认为这两个数组相等

如何使if语句为真,以便执行指令

String[] tab1 = new String[]{"abc"}
String[] tab2 = new String[]{new String("abc")}

if(tab1 == tab2){

    ...
}
解释

如果两个指定的对象数组彼此相等,则java.util.Arrays.equalsObject[]a,Object[]a2方法返回true。如果两个数组包含相同数量的元素,则认为这两个数组相等,两个数组中所有对应的元素对都是相等的。如果e1==null,则两个对象e1和e2被视为相等?e2==null:e1.equals2。如果两个数组包含相同顺序的相同元素,则它们相等。如果两个数组引用都为null,则认为它们相等

方法的声明是 公共静态布尔等式对象[]a,对象[]a2

由于字符串在java中是对象,因此可以使用此方法比较两个数组。

两个新对象永远不相等;因此,不能使两个新数组相等,因为在这两个定义中都显式创建了一个新数组对象

每次使用新关键字时,都会创建该类型的新实例

如果您想比较这两个数组的元素,那就另当别论了,为此,您首先必须获取有问题的元素,然后进行比较,在您的例子中,这看起来像:

iftab1[0]。等式TAB2[0]{ ... }
或者,您可以使用一些进行数组比较。

要比较字符串,请使用str1.equalsstr2。请注意,您没有字符串-因此,请先了解如何从数组中获取字符串。您想知道如何比较两个字符串数组吗?或者您想知道如何使精确表达式tab1==tab2计算为true吗?
Arrays.equals(tab1, tab2);