実はいくつか質問があります。
次のインスタンス フィールドを持つクラスDogがあります。
private int id;
private int id_mother;
private int id_father;
private String name="";
private String owner="";
private String bDate="";
また、 Dogをインスタンス化し、Dog オブジェクトを ArrayList に入れることができるArchiveクラスもあります。
ID として整数を取り、ArrayList を調べて、その ID を含むオブジェクトを返すメソッドをArchiveに書き込もうとしています。
private Dog getDog(int id){
Dog dog = new Dog();
int length=getSize();
int i=0;
dog=al.get(i);
i++;
while(dog.getId()!=id && i<length)
dog=al.get(i);
i++;
if(dog.getId()!=id)
dog=null;
return dog;
}//end getDog
この方法には 2 つの問題があります (私が使用する他の方法は機能します)。まず第一に、それは機能していません。その理由はわかりません。ループが終了した後、検索するオブジェクトがなくなったためにループが終了したかどうか、または指定された ID を持つオブジェクトが見つかったためにループが終了したかどうかを確認します。 . 第二に、それは非常に時間のかかるプロセスのようです。これをスピードアップする方法はありますか?