2016-04-13 15 views
-1

Javaの場合、私は定義したParentクラスのリストを持っています。このParentクラスはChildクラスのオブジェクトを持ち、このChildクラスはsearch-variableを含みます。ネストされたバイナリ検索Java

今すぐネストされたクラス変数の検索を実行する方法はありますか。 基本的には、親クラスリストにその子クラス検索変数が含まれているかどうかを確認したかっただけです。

ArrayList<Parent> parentList; 

class Parent { 

    Child child; 
} 

class Child { 
    String searchVariable; 
} 

任意の提案!

+0

あなたが何を求めていますか? '親 'のすべてに検索変数を持つ子があるかどうかをチェックしたいのですか?または、少なくとも1人が行っていれば?あるいは、子供がいるすべてにsearchvariabeを持つ子供がいれば? "contains"はどのように定義されていますか?検索変数はnullでなくてもかまいませんか?何を試しましたか? – Tobb

+0

親にはチャイルド・サーチ値が含まれています。私はComparatorsのインターフェイスでCollections.binarySearch(parentList、新しいChild()。search)を試してみました...うまくいくと思います。 – CoDe

+0

[Collections.binarySearch](https://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#binarySearch-java.util.List-T-java.util.Comparator- child.searchVariableを比較する独自のComparator実装を使用します。 –

答えて

0

このような何かが、仕事をしなければならない。

declare child list: childrenWithSearchVar ; 
for(Parent p : parentList) { 
    if(p.child.searhVariable!=null && !p.child.searhVariable.equals("")) { 
     add to childrenWithSearchVar 
    } 
} 
print childrenWithSearchVar 
関連する問題