2014-02-07 42 views
0

所以我有一個值安卓:搜索字符串的ArrayList用繩子

ArrayList<String> urls = new ArrayList<String>(); 

一個字符串數組列表和用戶輸入的字符串的

EditText iSearchValue = (EditText) findViewById(R.id.iQuestion); 
    String sSearchValue = iSearchValue.getText().toString(); 

現在的問題是,我怎麼遍歷ArrayList的長度來檢查數組中是否有值包含用戶在sSearchValue字符串中輸入的內容。

我看着在文檔和指南,但我仍然有種迷茫,具有涉及到什麼Im做會幫助我的理解有很多了堅實的例子!謝謝!

回答

0

嘗試使用此代碼:

for(String s : urls) 
{ 
    if(sSearchValue.contains(s) == true) 
    { 
     // do something 
    } 
} 
+0

只是一個問題,什麼是一個String?這只是一個例子,我應該用什麼替換它?如果是這樣,我應該用什麼來取代它? – user3285864

+0

這不是正常的循環。對於每個循環來說都是這樣的,所以'String s'是一個'String',每當循環重新啓動時它都會改變。循環遍歷ArrayList中的每一項。 – Cilenco

0

你甚至可以使用番石榴庫,並使用謂詞通過列表,而循環進行搜索。

class SearchForString implements 
Predicate<String>{ 

// create constructor here and pass search string 
// initialize the searchstring local variable with  the parameter passed in the constuctor 


// override the method here 
// inside the method 
// return value 

    return stringVar.equals(searchString); 
} 

呼叫謂詞是這樣的:

String value = Iterables.find(arraylistofstring, new SearchForString(searchstring), null);