Java 如何比较if语句中以逗号分隔的多个单词?
我有一个名为title的变量,它的值为“Javascript、XML、XHTML、CSS、Ajax”。我需要在if语句中比较,如果标题等于上面的值,则需要运行一些代码 我用过Java 如何比较if语句中以逗号分隔的多个单词?,java,Java,我有一个名为title的变量,它的值为“Javascript、XML、XHTML、CSS、Ajax”。我需要在if语句中比较,如果标题等于上面的值,则需要运行一些代码 我用过 if (title == "Javascript,XML,XHTML,CSS,Ajax"){ } else if (title == " ") { } else { } 当标题为空时,代码将转到第二个else部分并获得正确的结果。但是当标题等于Javascript、XML、XHTML、CSS、Ajax时,代码将转到
if (title == "Javascript,XML,XHTML,CSS,Ajax"){
} else if (title == " ") {
} else {
}
当标题为空时,代码将转到第二个else
部分并获得正确的结果。但是当标题等于Javascript、XML、XHTML、CSS、Ajax时,代码将转到最后的else
部分,而不是if
部分
我在这里犯了什么错误?我已经检查了大小写和拼写以及分隔符逗号。字符串与变量标题中的字符串相同。那为什么我得不到正确的答案。比较运算符不是比较字符串内容的正确方法。您应该改为使用以下方法:
比较运算符不是比较字符串内容的正确方法。您应该改为使用以下方法:
您正在使用
==
来比较字符串。您必须使用title.equals(“Javascript,”)
进行字符串比较;否则,您将检查它们是否实际上是内存中的同一对象。您正在使用==
来比较字符串。您必须使用title.equals(“Javascript,”)
进行字符串比较;否则,您将检查它们是否实际上是内存中的同一对象。如果您使用Java,则需要使用if(title.equalsIgnoreCase(“Javascript、XML、XHTML、CSS、Ajax”)
。equals运算符用于确定两个指针是否具有相同的值(即指向同一对象)。如果使用Java,则需要使用if(title.equalsIgnoreCase(“Javascript、XML、XHTML、CSS、Ajax”)
。equals运算符用于确定两个指针是否具有相同的值(即指向同一对象)
另一个建议是,您应该先看看一些基本的Java
另一个建议是,您应该先看看一些基本的Java 在Java中,字符串是对象。==运算符告诉您它们是否是同一对象的同一实例。请改为使用equals(…)方法。在Java中,字符串是对象。==运算符告诉您它们是否是同一对象的同一实例。对此,请使用equals(…)方法
if (title.equals("Javascript,XML,XHTML,CSS,Ajax")) {
if(title.equals("Javascript,XML,XHTML,CSS,Ajax")) {
....
}