Csharp/C Sharp/LINQ/ElementAt
Содержание
Calling the ElementAt Operator
using System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
public class Employee {
public int id;
public string firstName;
public string lastName;
public static ArrayList GetEmployeesArrayList() {
ArrayList al = new ArrayList();
al.Add(new Employee { id = 1, firstName = "J", lastName = "R" });
al.Add(new Employee { id = 2, firstName = "W", lastName = "G" });
al.Add(new Employee { id = 3, firstName = "A", lastName = "H" });
al.Add(new Employee { id = 4, firstName = "D", lastName = "L" });
al.Add(new Employee { id = 101, firstName = "K", lastName = "F" });
return (al);
}
public static Employee[] GetEmployeesArray() {
return ((Employee[])GetEmployeesArrayList().ToArray(typeof(Employee)));
}
}
public class MainClass {
public static void Main() {
Employee emp = Employee.GetEmployeesArray().ElementAt(3);
Console.WriteLine("{0} {1}", emp.firstName, emp.lastName);
}
}
The element operators extract one element from the input sequence
//First, Last, Single, and ElementAt
using System;
using System.Collections.Generic;
using System.Linq;
public class MainClass {
public static void Main() {
int[] numbers = { 10, 9, 8, 7, 6 };
int firstNumber = numbers.First();
int lastNumber = numbers.Last();
int secondNumber = numbers.ElementAt(1);
int lowestNumber = numbers.OrderBy(n => n).First();
}
}
use ElementAt
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Linq;
public class MainClass{
public static void Main(){
int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9};
var query = numbers.ElementAt(4);
Console.Write(query);
}
}
Use ElementAt to print the fourth number less that 5 in an integer array
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
public class MainClass {
public static void Main() {
int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
int fourthLowNum = (
from n in numbers
where n < 5
select n)
.ElementAt(3); // 3 because sequences use 0-based indexing
Console.WriteLine("Fourth number < 5: {0}", fourthLowNum);
}
}