Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

C# OfType() วิธีการ


กรองคอลเล็กชันตามองค์ประกอบแต่ละประเภท

สมมติว่าคุณมีรายการต่อไปนี้ที่มีองค์ประกอบจำนวนเต็มและสตริง −

list.Add("Katie");
list.Add(100);
list.Add(200);

เพื่อกรองคอลเลกชันและรับเฉพาะองค์ประกอบที่มีประเภทสตริง

var myStr = from a in list.OfType<string>() select a;

ทำงานแบบเดียวกันสำหรับประเภทจำนวนเต็ม

var myInt = from a in list.OfType<int>() select a;

ต่อไปนี้เป็นรหัสที่สมบูรณ์ -

ตัวอย่าง

using System;
using System.Linq;
using System.Collections;
public class Demo {
   public static void Main() {
      IList list = new ArrayList();
      list.Add("Katie");
      list.Add(100);
      list.Add(200);
      list.Add(300);
      list.Add(400);
      list.Add("Brad");
      list.Add(600);
      list.Add(700);

      var myStr = from a in list.OfType<string>() select a;
      var myInt = from a in list.OfType<int>() select a;
      Console.WriteLine("Strings...");
      foreach (var strVal in myStr) {
         Console.WriteLine(strVal);
      }
      Console.WriteLine("Integer...");
      foreach (var intVal in myInt) {
         Console.WriteLine(intVal);
      }
   }
}

ผลลัพธ์

Strings...
Katie
Brad
Integer...
100
200
300
400
600
700