我是一个相当新的程序员,作为我正在做的几个项目的一部分,我正在使用子字符串。在所有这些中,我都遇到了 if 语句的问题。假设我有两个变量,一个是其他字符串的子字符串,另一个变量应该相当于第一个子字符串。如果我尝试在 if 语句中检查它们是否相等(它们应该是相等),它会返回 false 并 == 检查。下面是一些要演示的代码。
public class Substringproblem{
static void method(){
String random="somestring";
String randomsubstring=random.substring(0,3);
String should_be_randomsubstring="som";
if(randomsubstring==should_be_randomsubstring){
System.out.println("Success");
}else{
System.out.println("Failure");
System.out.println(randomsubstring);
}
}
public static void main(String[] args) {
method();
}
}
我感觉我错过了一些非常明显的东西,但我一直在寻找,但没有发现任何类似的东西。非常感谢您的帮助。
最佳答案
randomsubstring.equals(should_be_randomsubstring)
或
randomsubstring.equalsIgnoreCase(should_be_randomsubstring)(If you want to ignore cae use this)
而不是
randomsubstring==should_be_randomsubstring)
每当您比较字符串时,请使用 .equals()
或 .equalsIgnoreClas()
关于java - Java 中的子字符串和 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15402101/