在C#中,LINQ提供了一系列用于条件判断的方法,如All、Any和Contains,这些方法使得对集合进行条件检查变得非常方便和高效,操作符返回一个布尔值,即真或当一个序列中的部分或全部元素满足特定条件的假。
| 操作符 | 描述 |
|---|---|
| All | 返回一个值'True',如果序列中的所有元素满足谓词条件 |
| Any | 确定通过搜索一个序列是否相同的任何元件满足规定的条件 |
| Contains | 如果找到某个特定元素有一个序列返回一个“true”的值,如果序列不包含特定的元素,'false'值返回 |
在C#中,LINQ(Language Integrated Query)提供了一种声明式的编程方式,可以用来对数据进行查询、筛选、排序等操作。当你想要拼接(即连接)两个序列时,LINQ提供了几种方法,最常用的是Concat和Union。
Concat方法用于将两个序列拼接成一个序列,保留原始序列中的所有元素,包括重复元素。如果第一个序列中有重复的元素,或者第二个序列中有元素与第一个序列中的元素相同,这些元素在结果序列中都会被保留。
基础类
C#class Hero
{
public int HeroNo { get; set; }
public string Name { get; set; }
public string Country { get; set; }
public int Age { get; set; }
public Hero(string name, int age, int heroNo, string country)
{
Name = name;
Age = age;
HeroNo = heroNo;
Country = country;
}
}
class Army
{
public int HeroNo { get; set; }
public int ArmyNo { get; set; }
public int Qty { get; set; }
public string TeamLeader { get; set; }
}
在C#中,LINQ(Language Integrated Query)提供了强大的查询能力,允许我们以声明式的方式处理和查询数据集合。在处理类型多样化的集合时,OfType<T>() 方法和使用 case 语句在查询中进行类型过滤或转换变得十分有用。这两种方法可以帮助我们在LINQ查询中处理不同类型的元素。
| Cast | 执行一个集合的元素的转换到一个指定类型 | 使用显式类型范围变量。例如:从str在字符串String中 |
|---|---|---|
| OfType | 在它们的基础上过滤值,这取决于它们的能力,以被转换为特定类型 |
C#private void btnSearch_Click(object sender, EventArgs e)
{
ArrayList al = new ArrayList();
al.Add(1);
al.Add(2);
al.Add(3);
IEnumerable<int> ret = al.Cast<int>();//非泛型转泛型
foreach (var item in ret)
{
lstMain.Items.Add(item);
}
}