当前位置: 首页 > news >正文

网页qq登陆网站软件app制作

网页qq登陆网站,软件app制作,苏州网站建设的公司,提供邯郸手机网站建设集合 表示一组可用于获取和存储的对象#xff0c;在 C# 中提供了两种类型的集合。普通集合泛型集合前者存在于 System.Collections 命名空间下#xff0c;属类型不安全的#xff0c;后者存在于 System.Collections.Generic 命名空间下#xff0c;属类型安全的。不可变对象 … 集合 表示一组可用于获取和存储的对象在 C# 中提供了两种类型的集合。普通集合泛型集合前者存在于 System.Collections 命名空间下属类型不安全的后者存在于 System.Collections.Generic 命名空间下属类型安全的。不可变对象 定义为一旦创建就不可变更的对象, 在 .NET Core 中就存在着这三大 IReadOnlyList,IReadOnlyDictionary 和 IReadOnlyCollection 不可变集合这篇文章我们就来讨论这些不可变集合以及在C#中如何使用。三大只读类型介绍 IReadOnlyCollection 表示一个只读集合的基础接口它实现了 IEnumerable 接口代码定义如下public interface IReadOnlyCollectionout T : IEnumerableT, IEnumerable{int Count { get; }}IReadOnlyDictionary 表示一个字典的只读形态它实现了基础的只读集合接口 IReadOnlyCollection, 下面的代码展示了如何将 泛型字典 只读化。 public IReadOnlyDictionarystring, string Dictionary { get; }  new Dictionarystring, string{{ 1, ABC },{ 2, XYZ },{ 3, PQR },};IReadOnlyList 表示一个列表的只读形态值得注意的是 只读集合 只能通过 index 访问如下代码所示[DefaultMember(Item)]public interface IReadOnlyListout T : IEnumerableT, IEnumerable, IReadOnlyCollectionT{T this[int index] { get; }}使用 IReadOnlyList 替换 List 接下来我们看一下如何使用 IReadOnlyList 替换 List 来实现列表的只读化,考虑下面的类。 public class Author {public int Id { get; set; }public string FirstName { get; set; }public string LastName { get; set; } }假如你想从数据库中返回 author 集合使用如下代码 public static ListAuthor GetAuthors() {return new ListAuthor{new Author{Id  1,FirstName  Joydip,LastName  Kanjilal},new Author{Id  2,FirstName  Steve,LastName  Smith}}; }为了简化我省略了对数据库繁琐的操作下面的代码展示了如何在 Main 方法中调用 GetAuthors() 方法。 static void Main(string[] args) {var authors  GetAuthors();Console.Read();            }显而易见上面的这种 authors 集合是我们用的最多的可变集合那现在的问题是如何阻止 authors 被修改呢这里就可以使用 IReadOnlyList 来确保 GetAuthors() 方法返回的集合不可更变做法就是将方法的返回值从 ListAuthor 修改为 IReadOnlyListAuthor如下代码所示。 public static IReadOnlyListAuthor GetAuthors() {return new ListAuthor{new Author{Id  1,FirstName  Joydip,LastName  Kanjilal},new Author{Id  2,FirstName  Steve,LastName  Smith}}; }接下来看一下 Main 下的 authors 是否有可添加的 Add() 方法如下图所示使用 IEnumberable 接口 不知道大家可否发现现存的只读接口都继承了 IEnumberable这就意味着 IEnumberable 也是一种只读形态如果你只需要对集合进行迭代那么就可以使用 IEnumberable 接口啦如下代码所示: public void MyMethod(IEnumerableAuthor authors) {foreach (Author author in authors){//Write your code here} }如果需求不满足可以对 IEnumerable 继续向下转型比如想对集合进行索引访问那么可以转成 IReadOnlyList 接口尽量满足 可用功能的最小化 改造后的代码如下 public void MyMethod(IReadOnlyListAuthor authors) {int count  authors.Count;for(int index  0; index  count; index){var author  authors[index];//Write your code here} }IEnumerable 是 .NET 较早版本可用于只读集合形态的接口, 在 .NET Core 中提供了新的只读接口可用于阻止集合的修改不过值得注意的是这些对数据提供只读视图的接口本质上来说也仅仅是高层的封装而已。译文链接https://www.infoworld.com/article/3610473/how-to-work-with-read-only-collections-in-csharp.html
http://www.pierceye.com/news/723098/

相关文章:

  • 深圳网站建设索q.479185700如何修改网站后台的用户名和密码
  • 长春网站推广专门做二手书网站或app
  • 北京智能网站建设制作什么叫优化
  • 免费移动网站建站wordpress加skype
  • 企业推广建站网页开发教程
  • 外贸网站定制开发网站虚拟主机过期
  • 学习网站建设要报班吗中国建设银行晋中分行网站
  • 学校网站建设经验介绍西安建设网站公司
  • 江西营销网站建设公司的企业诚信建设分析
  • 生活家装饰官方网站动画设计考研
  • 网站内部的信息安全建设怎么才能在百度上做引流呢
  • 男男做的视频网站wordpress 系统
  • 网站建设合同 附件上海网站制作费用
  • 知名的环保行业网站开发开发一个app难吗
  • 律师网站建设方案网站企业制作
  • 基础建设期刊在哪个网站可以查做网站咨询
  • 万网个人网站备案查询甘肃建设银行网站
  • 网站建设有什么费用wordpress国外主题网站
  • 手机网站下拉菜单代码com域名代表什么
  • 网站右侧信息跟随左侧菜单栏变化好牛网站建设
  • 手机网站pc网站免费国外服务器租用
  • 商城网站建设服务wordpress手机导航三横拦
  • app设计欣赏网站长沙制作公园仿竹护栏
  • 景泰县做网站网站建设上市
  • 电子商务网站开发课题简介php mysql网站开发...
  • 如何提升网站alexa排名wordpress加联系方式
  • 餐厅网站模版wordpress linux
  • 网站seo优化怎么做mes系统
  • 江津网站建设公司做外贸去哪个网站找客户
  • 网站建设-部署与发布wordpress怎么代码高亮