تحقق من وجود عنصر في TreeSet في Java
كيفية البحث عن الكائنات المخزنة في نمط TreeSet< / span>؟ < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >ArrayList ينفذ نمط java.util.List الذي يوفر نمط get(int index) لاسترداد كائن بفهرسه. على عكس نمط قائمةسبان>، < نمط الامتداد = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >TreeSet< / span> ينفذ الواجهة java.util.Set الذي لا يسمح بفهرسة الكائنات ، لذلك لا يمكن الوصول إليه مباشرة.ومع ذلك ، تشترك المجموعتان في نمط يحتوي على () < / span> للتحقق مما إذا كانت القائمة (في حالتنا TreeSet) يحتوي على عنصر محدد. يمكنك تصفح TreeSet< / span> مع نمط المكرر< / span> واختبار المساواة مع الشرط if(o1.equals(o2))) حتى يصل إلى العنصر المطلوب. نحن هنا نتحدث عن Set ، بحيث يتم خلط العناصر وليس لها فهرس دقيق.
< pre class = "prettyprint lang-java" >import java.util.Iterator ؛
import java.util.TreeSet;
search_element الفئة العامة {
الفراغ الثابت العام الرئيسي (سلسلة [] args) {
// إنشاء TreeSet
TreeSet <سلسلة> tset = TreeSet
// ملء TreeSet
tset.add("abc");
tset.add("BCD");
tset.add("cde");
tset.add("def");
tset.add("efg");
السلسلة e = "def" ؛
// تحقق من وجود عنصر معين في TreeSet
منطقي موجود = tset.contains(e);
System.out.println (e +" موجود في treeset؟ "+موجود)؛
السلسلة e2 = "eee" ؛
موجود = tset.contains (e2) ؛
System.out.println (e2 +" موجود في مجموعة الأشجار؟ "+موجود)؛
مكرر <سلسلة> مكرر = tset.iterator () ؛
// ابحث عن العنصر واختبر المساواة مع يساوي
بينما (iterator.hasNext ()){
String obj = iterator.next();
if(obj.equals(e))
System.out.println ("الكائن "+e+" موجود في القائمة")؛
}
}
}
< / string >< / string >< / string >< / pre>ينتج عن تجميع وتنفيذ هذا الرمز هذا:
< pre class = "prettyprint lang-java" >def موجود في treeset؟ صحيح < BR / >EEE موجود في treeset؟ false
الكائن def موجود في القائمة
المراجع:
StackOverFlow: كيف لا تحتوي TreeSet في Java على طريقة get() ؟