検索方法を設計しました。私の要求によると、ユーザーが顧客のレコードを検索したい場合は、顧客の氏名または名前を名前テキストフィールドに入力し、検索ボタンをクリックすることができます。ボタンクリック(入力して、検索する名前はリーです)java:最良の「検索方法」
以下は検索用のコードで前と後、次の2つのスクリーンショットは、イベントの例を示しています。それは正常に動作しているが、私はそれをより良くしたいですか?
private void search()
{
String studentName=CNameTextField.getText();
String record="";
int count=0;
for(int i=0; i<myList.size();i++)
{
String name=myList.get(i).getName();
String [] splitName= name.split(" ");
if(studentName.equals(splitName[0]) || studentName.equals(splitName[1]))
{
count++;
record=record+"\n"+myList.get(i).toString();
}
display.setText("");
display.append(count + " result(s) found for "+ studentName);
display.append("\n "+ record);
}
}
もっと速いのですか?より良いスケーリング? – lynks
http://codereview.stackexchange.com/で尋ねたいと思うかもしれませんが、あなたが作業しているデータセットの大きさはどれくらいですか?リスト内の数百のエントリだけであれば、直線的な線形検索はうまくいくでしょう(そして、率直に言って、もっとうまくいくかもしれません)。さらに多くの場合は、これらのオブジェクトを表すために使用するデータ構造についての質問があります。パフォーマンスやメモリに関する懸念がある場合は、プロフィールプロフィールプロフィールをご覧ください。 – birryree
可能であれば、私はより良いロジックでそれを望みます。それは4つのレコードだけです。 – Ravi