List<Object>对象集合一些扩展方法
// 商品集合信息
List<Product> list = new List<Product>()
{
new Product() {Id = 1,Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
new Product() {Id = 2,Name = "IPhone4s",Price = 2999,Remark = "心动不如行动"},
new Product() {Id = 3,Name = "IPhone5",Price = 3999,Remark = "心动不如行动"},
new Product() {Id = 4,Name = "IPhone5s",Price = 4999,Remark = "心动不如行动"},
new Product() {Id = 5,Name = "IPhone6",Price = 5999,Remark = "心动不如行动"},
new Product() {Id = 6,Name = "IPhone6s",Price = 6999,Remark = "心动不如行动"},
new Product() {Id = 7,Name = "IPhone7",Price = 7999,Remark = "心动不如行动"},
new Product() {Id =8,Name = "IPhone7s",Price = 8999,Remark = "心动不如行动"},
new Product() {Id = 9,Name = "IPhone7s Plus",Price = 9999,Remark = "心动不如行动"},
// 除了ID其它字段重复数据
new Product() {Id = 1,Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
new Product() {Id = 10,Name = "IPhone4s",Price = 2999,Remark = "心动不如行动"},
new Product() {Id = 11,Name = "IPhone5",Price = 3999,Remark = "心动不如行动"},
new Product() {Id = 12,Name = "IPhone5s",Price =4999,Remark = "心动不如行动"},
new Product() {Id = 13,Name = "IPhone6",Price = 5999,Remark = "心动不如行动"},
new Product() {Id = 14,Name = "IPhone6s",Price = 6999,Remark = "心动不如行动"},
// 完全重复数据
new Product() {Id = 1,Code = "123456789",Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
new Product() {Id = 1,Code = "123456789",Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
new Product() {Id = 1,Code = "123456789",Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
new Product() {Id = 1,Code = "123456789",Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
new Product() {Id = 1,Code = "123456789",Name = "IPhone4",Price = 1999,Remark = "心动不如行动"},
};
//// 1:根据条件筛选价格大于3000的商品信息
//var query = list.Where(p=>p.Price>3000).ToList();
//foreach (var item in query)
//{
// Console.WriteLine(item.Id+"--"+item.Code + "--" +item.Name + "--" +item.Price + "--" +item.Remark);
//}
//// 2-1:去除重复的数据(声明一个类继承:IEqualityComparer<Product>)
//var query = list.Distinct(new DistinctComparer());
//foreach (var item in query.ToList())
//{
// Console.WriteLine(item.Id + "--" + item.Code + "--" + item.Name + "--" + item.Price + "--" + item.Remark);
//}
//// 2-2:利用HashSet去除重复数据
//var js = new List<string>() { "1", "1", "2", "3" };
//HashSet<string> hs = new HashSet<string>(js); //此时已经去掉重复的数据保存在hashset中
//foreach (var item in hs)
//{
// Console.WriteLine(item);
//}
//// 获取list集合总数
//var query = list.Count();
//Console.WriteLine(query);
//// 新增数据
//list.Add(new Product() { Id = 10, Price = 123, Remark = "新增", Name = "IPhone8" });
//foreach (var item in list)
//{
// Console.WriteLine(item.Id + "--" + item.Code + "--" + item.Name + "--" + item.Price + "--" + item.Remark);
//}
//// 新增数据
//list.AddRange(new List<Product>() {new Product() {Id = 20,Name = "AddRange方法",Price = 1111,Remark = "AddRange添加"} });
//foreach (var item in list)
//{
// Console.WriteLine(item.Id + "--" + item.Code + "--" + item.Name + "--" + item.Price + "--" + item.Remark);
//}
//// 删除所有数据
//list.Clear();
//var query = list.Count();
//Console.WriteLine(query);
//// 删除指定数据
//list.Remove(new Product() { Id = 14, Name = "IPhone6s", Price = 6999, Remark = "心动不如行动" });
//foreach (var item in list)
//{
// Console.WriteLine(item.Id + "--" + item.Code + "--" + item.Name + "--" + item.Price + "--" + item.Remark);
//}
// ForEach 遍历集合
list.ForEach(p =>
{
Console.WriteLine(p.Id + "--" + p.Code + "--" + p.Name + "--" + p.Price + "--" + p.Remark);
});
list集合中还有许多扩展方法。以后持续补充。
List<Object>对象集合一些扩展方法的更多相关文章
- 【java基础】java中Object对象中的Hashcode方法的作用
以下是关于HashCode的官方文档定义: hashcode方法返回该对象的哈希码值.支持该方法是为哈希表提供一些优点,例如,java.util.Hashtable 提供的哈希表. hashCode ...
- 3、Object对象的两大方法(hashCode-equals)总结
Object类是所有java类的父类. 用户定义了如下一个Person类 public class Person{} 在类定义中并没有明确继承Object类,但是编译器会自动的完成这个过程. 既然所有 ...
- MVC为Html对象建立一个扩展方法,使用自己的控件就像使用TextBox一样方便
先看一下我想要的结果: 很容易它就是一个单选按钮组,当我后台为Html对象(HtmlHelper的一个实例,它被定义在System.Web.Mvc名称空间下的WebViewPage类,即它对于所有MV ...
- JavaScript之Object对象常用属性与方法手册
MDN Object参考地址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Obje ...
- jquery中object对象循环遍历的方法
一个朋友问对象如何转为数组,当我问他为啥要转得时候,他告诉我,数组可以用js循环遍历,而对象则不可以.其实呢,对象同样可以循环遍历的啊.不用转换也可以循环!说明你对js或者jquery的某些操作不是很 ...
- 集合的扩展方法ForEach的使用
List<, , , , }; list.ForEach(p => Console.WriteLine(p)); 或者 List<, , , , }; list.ForEach(p ...
- 【转载】C#中List集合使用Exists方法判断是否存在符合条件的元素对象
在C#的List集合操作中,有时候需要根据条件判断List集合中是否存在符合条件的元素对象,此时就可以使用List集合的扩展方法Exists方法来实现,Exists方法的签名为bool Exists( ...
- ES6 对象定义简写及常用的扩展方法
1.ES6 对象定义简写 es6提供了对象定义里的属性,方法简写方式: 假如属性和变量名一样,可以省略,包括定义对象方法function也可以省略 <script type="text ...
- jQuery 工具类函数-使用$.extend()扩展Object对象
除使用$.extend扩展工具函数外,还可以扩展原有的Object对象,在扩展对象时,两个对象将进行合并,当存在相同属性名时,后者将覆盖前者,调用格式为: $. extend (obj1,obj2,… ...
随机推荐
- koahub.js 0.09 发布,新增钩子机制
koahubjs发布0.09 新增钩子机制添加钩子机制,控制器钩子和函数钩子修复自动加载bug,实现除自动加载导出的default外,还能自动加载其他的方法记koahubjs钩子开发过程在使用koah ...
- python 的正则表达式 贪婪模式与懒惰模式
正则表达式中用于表示匹配数量的元字符如下: ? 重复0次或1次,等同于{0,1} * 重复0次或更多次,等同于{0,} + 重复1次或更多次,等同于{1,} {n,} 重复n次及以上 上面的表示匹配次 ...
- 在python&numpy中切片(slice)
在python&numpy中切片(slice) 上文说到了,词频的统计在数据挖掘中使用的频率很高,而切片的操作同样是如此.在从文本文件或数据库中读取数据后,需要对数据进行预处理的操作.此时就 ...
- php流程管理练习
今天我们做一个流程管理: 1.流程管理的用法是什么样的? 2.怎么发起想要的流程? 3.审批的人要是怎么审批通过? 4.流程审核是不是要挨个走过? 一. 做这个流程管理肯定要有数据库: 二.数据库结束 ...
- (转)Zabbix Agent-Windows平台配置指导
原地址:http://blog.itpub.net/26739940/viewspace-1169538/ zabbix是一个CS结构的监控系统,支持ping,snmp等很多的监控,但是大部分 ...
- RunTime 给类添加属性
RunTime网上有很多人都不知道Runtime到底是干嘛的?有很多博主都是长篇大论给他们讲这个讲那个,我感觉还不如实例来的实在.很简单的一个例子:我们都知道会有这样的需求,未读消息列表的图片上要有一 ...
- unity插件开发——Selection
Selection是一个静态类,它的主要功能是获取在project窗口中鼠标选择的对象或者是inspector窗口的当前显示的对象.它的字段有 activeGameObject activeInsta ...
- vue2.0自定义指令的使用方法
感觉2.0好坑啊,自定义指令和1.0完全不一样,并且文档写得也不太清晰,下面是我写得一个demo,希望帮助大家更好地理解自定义指令 <!DOCTYPE html> <html lan ...
- oracle习题1~13
1. 查询Student表中的所有记录的Sname.Ssex和Class列. 2. 查询教师所有的单位即不重复的Depart列. 3. 查询Student表的所有记录. 4. 查询Score表中成绩在 ...
- 老李谈HTTP1.1的长连接 2
HTTP1.1的长连接 但是HTTP1.1开始默认建立的是长连接,即一旦浏览器发起HTTP请求,建立的连接不会请求应答之后立刻断掉. 1. 一个复杂的具备很多HTTP资源的网页会建立多少TCP连接,如 ...