1

我有一些String Array(如下所示),我想在里面搜索。我创建了一个editText和一个Button。进行此搜索的最佳方法是什么?

a0[0]="one";
a0[1]="two";
[...]
a1[0]="one-zero";
a1[1]="one-one";
[...]
a2[0]="two-zero";
a2[1]="two-one";

EditText searchField = (EditText) findViewById(R.id.searchfield);
Button searchButton = (Button) findViewById(R.id.searchbutton);
searchButton.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {
        for (String s : Facts_Array) {
            if (searchField.getText().toString().contains(s)) {
                [...]
4

1 回答 1

2

“一些字符串数组”有多长?如果它不长,并且您没有遇到性能问题,那么除了使用线性搜索之外,您不应该将时间花在这上面。如果你花时间在这上面,这是过早的优化。
二进制搜索是另一种选择,但正如我上面所说,只有在遇到性能问题时才考虑优化

于 2012-12-24T18:56:01.263 回答