当我将字符串拆分为字符串数组时,然后尝试将其匹配为字符串。像这样:
String[] thisString = "hello my name is".split(" ");
if (thisString[1] == "my"){
System.out.print("My!");
}
Java 中的对象比较应该使用.equals()
.
使用.equals()
而不是 ==
例子:
thisString[1].equals( "my")
==
比较检查参考相等。equals()
比较检查内容是否相等。
请使用equals
而不是==
.
在这种情况下,您应该使用String.equals
来检查字符串内容:
if (thisString[1].equals("my")) {
String.split
将为String
“my”创建不同的对象引用,因此ìf
使用运算符的语句表达式将为 false ==
。
== 比较,如果两者都引用同一个对象, 其中 .equals(string) 比较两个字符串是否具有相同的值
所以,使用if (thisString[1].equals("my"))
You are comparing object and in java
for object comparison we have .equals()
so in your case
if (thisString[1].equals("my"))
{
System.out.print("My!");
}
您实际上无法使用==
. 您需要使用equals()
方法,方法如下:
string1.equals(string2)