(1)将List复制到另一个List
List<T>newList = oldList.GetRange(index, count);
(2)批量对List的某个字段赋值
listName.ForEach(a => a.b = false);
(3)截取List
dataList = dataList.GetRange(firstIndex, 10); //截取firstIndex开始往后十个元素
(4)List转换为数组
String[] str=list.ToArray();
(5)排序
NumList.Sort((x, y) => x.CompareTo(y)); //升序
NumList.Sort((x, y) => -x.CompareTo(y)); //降序
(6)字符串List去重
NumList = NumList.Distinct().ToList();
(6)List使用foreach循环操作出现“集合已修改;可能无法执行枚举操作”错误
解决方法:
不要在枚举集合的操作(例如foreach)中去执行修改集合的操作。如果需要修改集合,那么应该先使用 ToArray() 方法。
foreach(var row in list.ToArray())
{
执行修改list的操作。
}
(7)在List里查找近似值
int firstIndex = dataList.Select((d, i) => { return new { Value = d, Index = i }; }).OrderBy(x => Math.Abs(x.Value - tempdata)).First().Index; //获取与tempdata最相近相近的第一个索引