2016-05-02 204 views
-4

我希望有人可以幫忙。那麼我知道如何使用線性搜索來查找數組內的數值。但現在我想學習如何搜索一個字符串數組。搜索特定字符串的字符串數組。

例如,如果我有一個學生姓名的字符串數組我怎麼能搜索數組來查找該數組內的特定名稱?

如果有人能給我寫一個簡單的例子,因爲我還是Java新手。謝謝,還有沒有更好的方法來搜索這些東西或線性搜索好嗎? :)

+1

當你說「幫助」但沒有付出努力時,人們將其解釋爲「爲我做」,這就是爲什麼你會陷入低估。 「給我寫一個簡單的例子」可能也沒有幫助。請在下次詢問之前花點功夫,因爲這不是免費的編碼服務。 – tnw

回答

2

使用Arrays.asList()將數組包裝到List中。然後使用法列表中搜索:

String[] a= {"is", "are", "then"}; 
Arrays.asList(a).contains("are"); 

你可以使用數組還可以,但必須寫一些代碼多行。 方法也只能搜索linear

public static boolean useLoop(String[] arr, String targetValue) { 
    for(String s: arr){ 
     if(s.equals(targetValue)) 
      return true; 
    } 
    return false; 
} 
0

絃樂的代碼可以是相同的數值,除了你應該使用String類的equals(...)方法,而不是==

您應該使用equals(...),因爲兩個不同的String對象可能具有相同的字符。但==將是不正確的,因爲它們是不同的對象。

例子比較表達式:

myArray[i].equals(myString) 

myString.equals(myArray[i]) 

注:請務必在左側的部分不null。否則,您將獲得NullPointerException