2012-03-14 106 views
1

如何搜索字符串數組?我有一本詞典應用程序,單詞保存在一個字符串數組中,如果你可以搜索你想要查找的單詞,而不是尋找單詞的話,它會更友好,用戶更友好。有人可以幫忙嗎?可搜索的字符串數組,Android?

謝謝。

+0

所以你目前的解決方案是通過數組進行迭代,直到找到一個給定的詞嗎? – mfrankli 2012-03-14 01:43:26

+0

爲什麼不使用散列表?他們有很棒的查詢時間! – ByteMe 2012-03-14 02:08:04

回答

0

您可以嘗試使用ArrayList來代替。然後,你可以看到,如果這個詞在「詞典」使用contains方法,例如:

ArrayList <String> myDictionary = new ArrayList<String>(); 
myDictionary.add(new String("foo")); 
myDictionary.add(new String("bar")); 


... 
// To check if the word exists in your dictionary. 
if (myDictionary.contains(new String("word_to_look_up"))) 
{ 
} 
+0

這似乎也很好。謝謝(y) – Ahmad 2012-03-14 01:51:36

0

不完全確定你在找什麼 - 你想看看這個單詞是否在數組中,或者目標是什麼?如果您希望用戶更快地查看單詞,更改字符串數組無法幫助用戶界面跳到正確的位置。

如果你希望它像谷歌建議你可以把你的數組,並建立一個樹形數據對象,其中每個節點代表一個字中的一個字母。然後,如果用戶鍵入a,則可以進入該節點並提供可能的單詞。

+0

那麼你需要一個用於用戶輸入的EditText和一個OnTextChangeListener(或類似的東西)和一個Tree數據結構http://stackoverflow.com/questions/3522454/java-tree-data-structure – AJcodez 2012-03-14 08:05:41