1

ArrayList辞書の索引データに使用します

類似検索システムを作りたい

例えば

dictionary data : 'abcd' 'bcde' 'cdef' 'fghi' 'ijkl'

検索'cd'したら取得したいindex '3'

私のソースで

for (String st : wordList) {
    if (st.indexOf(searchWord) == 0) {
        ListView.setSelection(index); //set listView scroll
        break;
    }
    index++;
}

しかし、時間がかかりすぎました:(

このシステムを作る最良の方法は何ですか?

4

2 に答える 2

1

ループから index++ を削除し、 if(CONDITION) を次のように変更するだけです。

  for (String st : wordList) {
    if (st.startsWith(searchWord)) {
       System.out.println("position="+wordlist.indexOf(st));//display index in log
       ListView.setSelection(wordlist.indexOf(st)); //set listView scroll
       break;
      }
  }
于 2013-08-17T09:10:16.067 に答える