2017-04-16 25 views
1

什麼是使用.contains時使用StringBuffer的等效方法?與字符串緩衝區的.contains相當於什麼

例如,一個字符串,你可以寫

String word = "word"; 

if(word.contains("w") { 
//Does something 
} 

,但如果更改字到StringBuffer,你得到一條錯誤:「該方法包含(字符串)是未定義的類型 的StringBuffer 「

我該如何編碼相同的行,但將單詞作爲StringBuffer進行編碼?

+3

'如果(word.indexOf( 「W」)> = 0)' – 4castle

+0

使用'StringBuilder' ,而不是'StringBuffer'。這是現代化的替代品。 –

回答

4

contains(String str)方法可以通過檢查indexOf(String str)是否返回一個值來指示子字符串在它所調用的字符串中。如果返回的索引是-1,那麼子字符串不在搜索的字符串內,但是它是其他方式。 StringBuffer沒有包含方法,但它有一個indexOf方法。因此,如果串代碼爲:

String str = "word"; 
if (str.contains("w")){ 
    //Handle it here 
} 

那麼相應的StringBuffer代碼將是:

StringBuffer strBuffer = new StringBuffer("word"); 
if (strBuffer.indexOf("w") != -1){ 
    //Handle it here 
}