0

我一直在 Processing 中使用 match 函数来匹配字符串。但是,在尝试匹配字符串数组中的字符串时,我遇到了问题。下面的代码是我想要做的一个例子:

String zj = "(V)X(PL)X(FR)";
String z = "(V)X(AV)X(FR2)";

String[] list4 = split (zj,'X');
String[] list5 = split (z, 'X');

String BZJ = list4[0];
String BZ = list5[0];

String [] Y = match (BZJ,BZ);
if (Y != null)
{
  println ("correct");
}
else
{
  println ("incorrect");
}

问题是,如果所有字符都不同,我只会收到“不正确”的答案。从打印输出看来,如果它可以匹配任何字符,则该功能似乎是满意的。所以对于示例代码,我的程序会将“FR”与“FR2”匹配。如果我人为地更改字符串以使它们在每个字符中都不同,那么(并且只有这样)我会收到“不正确”的答案。如果我只是独立比较两个字符串,则情况并非如此,其中函数(据我所知)仅在整个字符串匹配时才满足。任何想法一如既往地受到高度赞赏。

4

1 回答 1

1

在您的示例代码中,只需使用即可.equals()

if (BZ3.equals(BZ)) {
    println ("correct");
...
于 2012-09-07T22:03:55.997 回答