拆分数组与具有相同内容的定义数组不同?

时间:2011-11-16 05:10:52

标签: java arrays string split

此输出-BPBPfalse。

我真的很困惑为什么当字符串显然完全相同时布尔值为false。

为什么不是BPBPtrue?

提前致谢!

public class mySplit {

public static void main(String myString[])
{
    String myString1= "BP+Car+Bird";
    String myArray[] = {"BP","Car","Bird"};

    String myArray2[]= myString1.split("\\+");
    String A = myArray[0];
    String B = myArray2[0];

    System.out.print(A);
    System.out.print(B);

    boolean One = (A==B);
    System.out.print(One);

}

}

OUTPUT - BPBPfalse

1 个答案:

答案 0 :(得分:2)

A==B

需要

A.equals(B)

因为它们是不同的对象。

String one = "one";
String two = one;
boolean isEqual = one == two; // TRUE
boolean notTheSameObject = ("one" == one); // FALSE
boolean areEqual = (one.equals("one")); // TRUE String.equals