私は配列リストを持っていますArrayList医師いくつかの医師の詳細を格納するオブジェクトを格納します。各医師には固有のIDフィールドがあります。特定のID値を持つ医者のアレイリストを検索する方法はありますか?特定のフィールド値を持つオブジェクトを見つけるためにArrayListを検索する
答えて
このようなものを試してみてください。
private static Doctor queryDoctorById(List<Doctor> doctors, int id) {
Doctor doctor = null;
for (Doctor doc : doctors) {
if (doc.id == id) {
doctor = doc;
break;
}
}
return doctor;
}
// is a sample object representing doctor
protected static class Doctor {
public String name;
public int id;
}
私はそれがどのように動作するのか理解しているので、これを使用すると思います。みんなありがとう。 –
よろしくお願いします。 – Olu
最も簡単な、おそらくない最も効率的な解決策は、私は)それ以外の場合は、あなたが(代わりにd.getIdのd.id使用することになり、あなたはすべてのフィールドのセッター/ゲッターと「医師」を設定仮定していますそれは良い習慣ではありません:
私はまた、IDが文字と数字を含むことができ、文字列として表されると仮定しています。それは数ある場合は、使用する==の代わりに、あなたはちょうどそうのようなArrayListの上のストリームを使用することができます.equals
public Doctor findDoctorById(desiredID) {
for(Doctor d : doctors) {
if (d.getId().equals(desiredID) {
return d;
}
}
System.out.println("No doctors with that ID!");
return null;
}
ええ、私はd.getId()を使うので、私はgetterとsetterをプライベートフィールドの値で使っていました。私のID値はintですので、if文で正しい ".equals"ではなく==を使用します。 –
はい、正しいです。 "=="は数値の等価性のような完全な等価性であり、等価性は2つの文字列の比較のためのものです。 – mstorkson
:ここ
Optional<Doctor> getUniqueDoctorById(List<Doctor> list, String id) {
return list.stream()
.filter(doctor -> doctor.getId().equals(id))
.findFirst();
}
を、あなたはリストをストリーミングし、すべての医師をフィルタリング見ますdoctor idはあなたが探しているIDと同じです。
- 1. 特定の値を持つオブジェクトのインデックスのarraylistを検索する
- 2. std :: setの特定のフィールド値を持つオブジェクトを見つける方法は?
- 3. リフレクション:内部フィールド値を持つオブジェクトを見つける
- 4. 指定されたプロパティ値を持つリスト内のオブジェクトを検索し、辞書値を見つけよう
- 5. 「安全に」特定のフィールド値を持つデータテーブルの行を見つけよう
- 6. Powershellで列名を指定しないで特定の値を見つけるためにCSVファイルを検索
- 7. python ElementTree特定のテキスト値を持つ子を見つける
- 8. JavaScript - 特定のキー値を見つけるためのオブジェクトをループ
- 9. 再帰的にdir()特定の型または特定の値の値を見つけるためのPythonオブジェクト
- 10. 特定の値を見つけるためのループリスト
- 11. XSLT - 特定のタグを検索して見つける
- 12. XSLT - 特定の値を持つ子ノードを見つけるためにXMLをループする
- 13. 特定の値を持つ特定の属性を持つ要素を見つける方法
- 14. SQL:特定の値の最大値を持つ行を見つける方法
- 15. 特定の値を持つプロパティのjavascriptオブジェクトを検索しますか?
- 16. firebaseデータベースの特定のキー値を持つ要素オブジェクトを検索します。
- 17. ArrayListのバイナリ検索を使用して、特定のプレフィックスを持つ単語を検索する
- 18. データテーブルに特定の列の値を持つ行を見つける方法は?
- 19. 特定の値を見つけてオブジェクトのリストを通してオブジェクトを見つける
- 20. バウンディングボックスを持つオブジェクトを見つける
- 21. MatLab内のオブジェクトの配列内の特定のプロパティ値を持つオブジェクトを見つける?
- 22. 値を見つけるためにAccess VBAのレコードセットを索引付けする
- 23. Arraylistの最大値を見つけるためにループする方法
- 24. Pythonでスペルミスを見つけるための線形検索
- 25. Jpaフィールドの値のサブセットを見つけるための仕様
- 26. 特定の値を持つノードを検索し、XSLT
- 27. 特定の値を持つデータセット内の列のインデックスを見つける
- 28. 特定のスタイルを持つCSSクラスを見つける
- 29. 特定のカラーインデックスを持つセルを見つけるRange.findメソッド
- 30. 独自のクラスを持つArrayListの文字列値を見つける
arraylistを作成するコードを投稿できますか?多分、このデータは辞書として構造化されているでしょうか? – Stephopolis
医者の識別子を対応する医者のオブジェクトに写像する 'Map'にデータを保存する方が良いでしょう。ルックアップはエレガントで効果的になります。 –