منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
معلومات عن HashTable و كيفية استخدمها - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : الأقسام التعليمية - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=90)
+--- قسم : مكتبة أكواد المنتدى (http://vb4arb.com/vb/forumdisplay.php?fid=111)
+---- قسم : مكتبة أكواد .net (http://vb4arb.com/vb/forumdisplay.php?fid=117)
+---- الموضوع : معلومات عن HashTable و كيفية استخدمها (/showthread.php?tid=6277)



معلومات عن HashTable و كيفية استخدمها - RaggiTech - 17-10-12

كاتب الموضوع : Boutemine Oualid

الفئة Hashtable تمثل قائمة عناصر (مثل الArrayList) غير أن الوصول إلى المعلومات المخزنة فيها و البحث أسرع من بقية البنيات الأخرى(Collections, Arrays, Lists...) لأن عملية الوصول إلى المعلومة لا تعتمد على المعومة نفسها و انما على معلومة أخرى تسمى المفتاح(key/value )
استعمال الHashtable يشبه إلى حد ما استعمال الArrayList الاختلاف فقط يكون في الاستعلام عن العناصر و اضافتها أو حذفها

إضافة عنصر:


كود :
using System;
using System.Collections;
public class SamplesHashtable {
public static void Main() {
// بناء كائن جديد Hashtable myHT = new Hashtable();
// myHT.Add("المعلومة","المفتاح");
myHT.Add( "1", "وليد" );
myHT.Add( "2", "بوالطمين" ); myHT.Add( "4", "عبد"); myHT.Add( "8", "لله الواحد القهار" ); // Displays the Hashtable.
Console.WriteLine( "The Hashtable contains the following:" );
PrintKeysAndValues( myHT );
}
public static void PrintKeysAndValues( Hashtable myHT ) {
Console.WriteLine( "\t-KEY-\t-VALUE-" );
foreach ( DictionaryEntry de in myHT ) {
Console.WriteLine( "\t{0}:\t{1}", de.Key, de.Value ); Console.WriteLine();
}
}
حذف عنصر


كود :
public static void Main() {
// بناء كائن جديد
Hashtable myHT = new Hashtable();
// myHT.Add("المعلومة","المفتاح");
myHT.Add( "1", "وليد" );
myHT.Add( "2", "بوالطمين" );
myHT.Add( "4", "عبد");
myHT.Add( "8", "لله الواحد القهار" );

// myHT.Remove ("key");
myHT.Remove ("2");
// Displays the Hashtable.
Console.WriteLine( "The Hashtable contains the following:" );
PrintKeysAndValues( myHT );
}