public void OfType() { var query = fruits.OfType <string>(); foreach (string str in query) { Console.WriteLine(str); } }
public static int[] FilterArray(object[] arr) { System.Collections.ArrayList list = new System.Collections.ArrayList(arr.Length); for (int i = 0; i < arr.Length; i++) { list.Add(arr[i]); } IEnumerable <int> query1 = list.OfType <int>(); return(query1.ToArray()); }
static void c() { System.Collections.ArrayList items = new System.Collections.ArrayList(4); items.Add("Shoes"); items.Add("Clothes"); items.Add(15.5); // kiểu số // Áp dụng OfType() vào ArrayList để tìm các phần tử là kiểu chuỗi IEnumerable <string> query1 = items.OfType <string>(); // Xuất danh sách các phần tử kiểu chuỗi trong 1 ArrayList foreach (string item in query1) { Console.WriteLine(item); } }
static void Main(string[] args) { System.Collections.ArrayList fruits = new System.Collections.ArrayList(4); fruits.Add("Mango"); fruits.Add("Orange"); fruits.Add("Apple"); fruits.Add(3.0); fruits.Add("Banana"); fruits.Add(new Stock()); // Apply OfType() to the ArrayList. var query1 = fruits.OfType<Stock>(); Console.WriteLine("Elements of type 'stock' are:"); foreach (var fruit in query1) { Console.WriteLine(fruit); } }
private void Method() { var myArrayList = new System.Collections.ArrayList { System.Drawing.Color.Red, new System.Drawing.Point(0, 0), System.Drawing.Color.Green, new System.Drawing.Point(10, 20), System.Drawing.Color.Blue, new System.Drawing.Point(20, 30) }; var query1 = myArrayList.OfType <System.Drawing.Color>().Select(color => color); foreach (var currentResult in query1) { Console.WriteLine(currentResult.Name); } var procesArray = new System.Collections.ArrayList(); var query = procesArray.Cast <System.Diagnostics.Process>().Select(process => process); }
public void TestLinqOfType() { var connectionString = _connectionString + "StoreName=" + Guid.NewGuid(); var context = new MyEntityContext(connectionString); var entity1 = context.Entities.Create(); entity1.SomeString = "An entity"; var animal1 = context.Animals.Create(); animal1.Name = "Mutley"; var person1 = context.Persons.Create(); person1.Name = "Jen Williams"; var company1 = context.Companies.Create(); company1.Name = "Networked Planet"; var person2 = context.Persons.Create(); person2.Name = "Kal Ahmed"; var entity2 = context.Entities.Create(); entity2.SomeString = "Another entity"; context.SaveChanges(); Assert.AreEqual(2, context.Persons.Count()); Assert.AreEqual(2, context.Entities.Count()); Assert.AreEqual(1, context.Companies.Count()); Assert.AreEqual(1, context.Animals.Count()); var arrayList = new System.Collections.ArrayList(5) {entity1, animal1, person1, company1, person2, entity2}; var entities = arrayList.OfType<Entity>(); Assert.AreEqual(2, entities.Count()); }
void ParseTelnet(StringBuilder sb) { while (telnet.Available > 0) { int input = telnet.GetStream().ReadByte(); System.Collections.ArrayList buffer = new System.Collections.ArrayList(); byte[] bytestosend; switch (input) { case -1: break; case (int)Verbs.IAC: //interpret as command int inputverb = telnet.GetStream().ReadByte(); if (inputverb == -1) { break; } switch (inputverb) { case (int)Verbs.IAC: sb.Append(inputverb); break; case (int)Verbs.DO: int inputoption = telnet.GetStream().ReadByte(); if (inputoption == -1) { break; } switch (inputoption) { case (int)SubCommand.TermType: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WONT); buffer.Add((byte)SubCommand.TermType); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.TermSpeed: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WONT); buffer.Add((byte)SubCommand.TermSpeed); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.XDisplay: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WONT); buffer.Add((byte)SubCommand.XDisplay); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.EnvirOption: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WONT); buffer.Add((byte)SubCommand.EnvirOption); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.Echo: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WONT); buffer.Add((byte)SubCommand.Echo); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.WinSize: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WILL); buffer.Add((byte)SubCommand.WinSize); buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.SNEG); buffer.Add((byte)SubCommand.WinSize); buffer.Add((byte)0); buffer.Add((byte)179); buffer.Add((byte)0); buffer.Add((byte)54); buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.ENDSNEG); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.RFC: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.WILL); buffer.Add((byte)SubCommand.RFC); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; } break; case (int)Verbs.WILL: inputoption = telnet.GetStream().ReadByte(); if (inputoption == -1) { break; } switch (inputoption) { case (int)SubCommand.SGA: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.DO); buffer.Add((byte)SubCommand.SGA); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.Status: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.DONT); buffer.Add((byte)SubCommand.Status); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; case (int)SubCommand.Echo: buffer.Add((byte)Verbs.IAC); buffer.Add((byte)Verbs.DO); buffer.Add((byte)SubCommand.Echo); bytestosend = buffer.OfType <byte>().ToArray(); telnet.GetStream().Write(bytestosend, 0, bytestosend.Length); buffer.Clear(); break; } break; case (int)Verbs.SNEG: inputoption = telnet.GetStream().ReadByte(); if (inputoption == -1) { break; } if (inputoption == (int)SubCommand.RFC) { int status = telnet.GetStream().ReadByte(); if (status == 1) { if (telnet.Available > 0) { break; } do { Thread.Sleep(100); }while (telnet.Available <= 0); } } break; case (int)Verbs.ENDSNEG: inputoption = telnet.GetStream().ReadByte(); break; } break; default: sb.Append((char)input); break; } } }