نمایش نتایج 1 تا 2 از 2

نام تاپیک: کار کردن با لیست

  1. #1

    کار کردن با لیست

    سلام
    من یک لیست از نوع Struct دارم

    List<test>

    آیا این امکان برای من هست که با یک حلقه for درونش حرکت کنم؟(با توجه به تست که انجام دادم ظاهرا بله!!)
    من میخوام درون هر عنصر برم.سپس هر عنصر خودش یک ساختار هست و جزئی از این ساختار که مثلا Time هست. رو یک مقدار دیگه جاهاش بزارم یا مثلا با عدد 5 جمع کنم. بزارم سر جاش.
    مهم تر موقع اش که شد. از لیست هم حذف کنم عنصر رو.
    حالا این عنصر میتونه اول یا اخر یا وسط باشه
    ایا لیست می زاره؟ اگر نه چه راه دیگری دارم؟ ممنون

  2. #2

    نقل قول: کار کردن با لیست

    اگر از struct استفاده کنی میتونی با واسطه مقادیر فیلد هر عنصر از لیست رو عوض کنی:

    struct MyStruct
    {
    public int a;
    }

    private void button1_Click(object sender, EventArgs e)
    {
    List<MyStruct> lstStruct = new List<MyStruct>();
    lstStruct.Add(new MyStruct() { a = 3 });
    lstStruct.Add(new MyStruct() { a = 6 });
    lstStruct.Add(new MyStruct() { a = 8 });

    for (int i = 0; i < lstStruct.Count; i++)
    {
    MyStruct cs = lstStruct[i];
    cs.a += 5;
    lstStruct[i] = cs;
    }
    }


    ولی اگر از کلاس استفاده کنی مستقیما:

    class MyClass
    {
    public int a;
    }

    private void button1_Click(object sender, EventArgs e)
    {
    List<MyClass> lstMyClass = new List<MyClass>();
    lstMyClass.Add(new MyClass() { a = 3 });
    lstMyClass.Add(new MyClass() { a = 6 });
    lstMyClass.Add(new MyClass() { a = 8 });

    for (int i = 0; i < lstMyClass.Count; i++)
    {
    lstMyClass[i].a += 5;
    }
    }


    برای حذف هم بله کافیه شئ مورد نظر را از طریق متد Remove و یا با داشتن اندیس با RemoveAt پاک کنی
    مثال:

    MyClass mc = lstMyClass.SingleOrDefault(i => i.a > 10);
    if (mc != null)
    {
    lstMyClass.Remove(mc);
    }

تاپیک های مشابه

  1. سوال: طریقه کار کردن با چک لیست باکس ChekedListBox
    نوشته شده توسط pourang_us در بخش VB.NET
    پاسخ: 4
    آخرین پست: یک شنبه 30 مرداد 1390, 11:59 صبح
  2. طریقه کار کردن با کنترل Timer
    نوشته شده توسط b_mohammadpoor در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 8
    آخرین پست: یک شنبه 26 بهمن 1382, 04:20 صبح
  3. توانایی فاکسپرو برای کار کردن با پورتها چقدره ؟
    نوشته شده توسط س.حمیدیانفر در بخش Foxpro
    پاسخ: 7
    آخرین پست: پنج شنبه 02 بهمن 1382, 13:20 عصر
  4. باز کردن یک لیست از داده ها با زدن دکمه Button از datagrid
    نوشته شده توسط ahmad_rabie2002 در بخش VB.NET
    پاسخ: 1
    آخرین پست: یک شنبه 06 مهر 1382, 17:03 عصر
  5. کار کردن با یک یا چند تایمر و سرعت اجرای برنامه
    نوشته شده توسط س.حمیدیانفر در بخش Foxpro
    پاسخ: 1
    آخرین پست: جمعه 28 شهریور 1382, 19:24 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •