我想知道return str.substring(1,4).equals("bad");
在else if(len>=4)
中在做什麼。我認爲if語句是一個警衛條款,但我不是100%。我能解釋一下究竟發生了什麼嗎?這是如何讀取輸出「假」?嵌套在if語句中的第二個return語句
給定一個字符串,如果字符串中的索引0或1開始出現「bad」,例如「badxxx」或「xbadxx」而不是「xxbadxx」,則返回true。該字符串可以是任意長度,包括0.注意:使用.equals()來比較2個字符串。
hasBad( 「badxx」)→真
hasBad( 「xbadxx」)→真
hasBad( 「xxbadxx」)→假
public boolean hasBad(String str)
{
int len = str.length();
if(len == 3 && str.equals("bad"))
return true;
else if(len >= 4)
{
if(str.substring(0, 3).equals("bad"))
return true;
return str.substring(1, 4).equals("bad");
}
else
return false;
}
你想知道什麼'return str.substring( 1,4).equals(「bad」);'是嗎? – MeetTitan
如果你不知道這段代碼是做什麼的,爲什麼不問那個誰寫了它爲什麼代碼是寫的方式。注意:這與'return str.matches(「。?bad。*」);' –