2018年9月29日.NET笔试面试题

数组列表和数组有什么区别?

  • 数组即Array类,数组列表即ArrayList类,两者非常相似,不过Array类在System命名空间下,ArrayList类在System.Collections命名空间下。
  • 数组在初始化时需要指定容量,并且指定后无法变更。而数组列表可以动态地改变容量,类似于StringBuilder类。

栈集合和队列集合有什么区别?

解答

  • 栈集合和队列集合都是System.Collections命名空间下的集合类型。
  • 栈集合类似于仅包含一个入口的容器,最先放进去的内容最后被取出,而最后放进去的内容最先被取出。
  • 队列集合类似于两端分别为入口和出口的容器,最先进去的内容最先被取出,最后进去的内容最后被取出。

分析

  • 大多数集合类型位于System.Collections命名空间下,除了ArrayListStack类,Queue类也比较常用。
  • Slack类也被称为栈集合类型,Queue类也被称为栈队列集合类型。
  • 顾名思义,栈集合类型的子项保存方式为先入后出的方式,而队列集合类型则相反,子项保存为先入先出方式。


    栈集合和队列集合的区别

泛型有什么优势?

  • 泛型可以在程序代码的类型定义或方法定义中以占位符的形式表示数据类型,而该数据类型直到使用时才决定。
  • 所以泛型中的类型参数允许在开发者不确定类型的情况下提供类型安全代码,使程序编写更具效率。

简述泛型约束的作用

解答

  • 定义泛型时可使用where关键字约束列表,以限制泛型类型参数的可选范围,如果类型参数指定时超出约束的指定范围,则编译时将报错。

分析

  • 泛型虽然给程序开发带来了很大的便利,提升了名序代码的编写效率,但也存在被滥用的可能。
  • 例如,有的程序中某些泛型类的类型占位符只允许某个范围类型(如仅限制于值类型),而泛型默认情况下允许使用任何类型将其实例化。
  • 使用泛型约束可以基本解决这种问题,泛型约束用于限制类型的可选范围,约束以where开头,多个约束可以用空格分隔后一起使用。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 面试必背 会舍弃、总结概括——根据我这些年面试和看面试题搜集过来的知识点汇总而来 建议根据我的写的面试应对思路中的...
    luoyangzk阅读 7,138评论 6 173
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,552评论 1 32
  • 在整个如同以往没太多规划的下午里,晓明内心被一种特殊酸涩占据。细细想来也并非无中生有,只是只有晓明闲下来,才...
    魏小丰阅读 142评论 0 0
  • 女生是不是会常常因为一些身体小状况而担心? 比如脸上又冒痘了、头发最近超爱出油、牙龈常常出血等等问题。 可是相比这...
    凯歌健康阅读 262评论 0 0
  • 有一次上课时,苏格拉底布置了一道作业,让他的弟子们做一件事,每天把手甩一百下,过一个星期后,他问有多少人现在还坚持...
    燚曦阅读 199评论 0 0

友情链接更多精彩内容