Java 比较两个字符串数组
我是Java的初学者。我需要比较两个字符串数组,并找出第一个数组中的任何值是否与第二个数组中的任何值匹配 这是我的函数,它不能按预期工作Java 比较两个字符串数组,java,arrays,Java,Arrays,我是Java的初学者。我需要比较两个字符串数组,并找出第一个数组中的任何值是否与第二个数组中的任何值匹配 这是我的函数,它不能按预期工作 public static boolean CheckStatAppearinLeftAndRight1(String[] array1, String[] array2) { boolean b = false; for (int i = 0; i < array2.length; i++) { for (in
public static boolean CheckStatAppearinLeftAndRight1(String[] array1, String[] array2)
{
boolean b = false;
for (int i = 0; i < array2.length; i++)
{
for (int a = 0; a < array1.length; a++)
{
if (array2[i] == array1[a])
{
b = true;
break;
}
else
{
b = false;
}
}
}
return b;
}
public静态布尔校验staptAppearinleftandRight1(字符串[]array1,字符串[]array2)
{
布尔b=假;
for(int i=0;i
有人能在这里指出这个问题吗
if (array2[i] == array1[a])
应该是
if ((array2[i]).equals(array1[a]))
试试>>>
使用array2[i].equals(array1[i])
而不是使用==运算符。
==运算符比较两个引用,并将为false。
equals()方法已在类String
中重写,该类匹配两个不同字符串对象的确切字符。布尔b=false;
boolean b = false;
for (int i = 0; i < array2.length; i++)
{
for (int a = 0; a < array1.length; a++)
{
if (array2[i].equals(array1[a]))
{
b = true;
break;
}
else
{
b = false;
}
}
if(b)
return b;
}
}
for(int i=0;i
当开发人员将字符串与==
进行比较时,他喊道:Dignorance不是一个错误;),我相信这是每个人都会犯的常见错误。在Java中,您不会将字符串与==
进行比较;使用.equals()
或.compareTo()
是否有什么大的原因让你用括号括住数组2[i]
?只需B弄清楚equals方法的应用
boolean b = false;
for (int i = 0; i < array2.length; i++)
{
for (int a = 0; a < array1.length; a++)
{
if (array2[i].equals(array1[a]))
{
b = true;
break;
}
else
{
b = false;
}
}
if(b)
return b;
}
}