PDA

View Full Version : سوال: delete کردن از آرایه



hastiam
یک شنبه 14 آذر 1389, 17:01 عصر
سلام
چگونه می توان مقداری را ازیک آرایه Delete کرد.

syntiberium
یک شنبه 14 آذر 1389, 17:32 عصر
عناصرش رو نمی شه از بین برد فقط تعداد عناصرش رو می شه با new کم و یا زیاد کرد . کل آرایه رو هم با dipose می شه از بین برد . اگه می خواهید این کار رو انجام دهید باید یک آرایه ی کمکی داشته باشید که حکم backup را برای آرایه ی شما اجرا کند و شما هر موقع خواستید چند تا خانه از آرایه را پاک کنید باید آرایه را new کنید سپس از خانه های آرایه ی کمکی همه را غیر از آن هایی را که نمی خواهید را کپی کنید .

Parham.D
یک شنبه 14 آذر 1389, 19:59 عصر
باید یک آرایه موقت هم نوع با آرایه اصلی داشته باشید، اندازه آرایه موقت باید به تعداد خانه‏های آرایه اصلی منهای تعداد آیتمهای باشد که میخواهید پاک کنید. و از آرایه اصلی یکی یکی بخوانید و بررسی کنید آیا آیتمی که در حال حاضر دارد میخواند همانی هست که باید پاک شود یا نه. اگر آیتم قرار نیست پاک شود به آرایه موقت فرستاده میشود و اگر باید پاک شود، فرستاده نمیشود. سپس آرایه اصلی پاک میشود. البته اگر از ArrayList استفاده کنید هیچ یک از موارد بالا نیاز نیست.

tooraj_azizi_1035
دوشنبه 15 آذر 1389, 14:20 عصر
سلام،
به جای آرایه از ArrayList استفاده کن. :قلب:

mehdi.mousavi
دوشنبه 15 آذر 1389, 14:40 عصر
سلام.
از اونجایکه عناصر ArrayList هر کدومشون یک Object هستن، دسترسی به این عناصر هزینه بر هستش (بدلیل عمل Boxing/Unboxing).
بنابراین بهتره تا از Generic List ها استفاده کنید.

موفق باشید.

میلاد قاضی پور
دوشنبه 15 آذر 1389, 15:35 عصر
یک ترفند غیر حرفه ای اینه که جای عناصر رو با هم عوض کرده و از متد ریسایز کلاس array استفاده کنید .
در این روش عنصر مورد نظر رو با عنصر آخر آرایه عوض کرده و از متد زیر استفاده میکنید که از آخر آرایه رو میبره


myarray=Array.Resize(طول آرایه جدید بعد از پاک شدن یک عنصر از آن)