这里整理了C#程序员经常面试的面试题,内容摘自C#与.NET程序员面试宝典这本书中,希望这篇博客对大家有用。
35.System.String是引用类型还是值类型
System.String是引用类型对象,System.String的只读特性使得它在对象在初始化之后做修改(包括插入、删除、切断等)操作。在示例代码中,strb=‘新字符串’,实际上初始化了一个新的字符串对象,并且付给了引用strb。
36.C#String和string的区别是什么?
string是String类型的一个别名,两者没有任何区别。在程序定义字符变量时程序员可string也可以String,但在一个系统中尽量使用同一的关键字。
37.如何在Byte[]和String之间进行转换
字符串和字节数组的转换依赖于编码方式,不同的编码标准将使用不同的算法进行。System.Text.Encoding类型提供了大部分常见的编码算法支持,用以进行字符串和字节数组之间的转换。
38.Array与ArrayList的区别
表面上Array和ArrayList是类似的,都具有索引(index),并且可以通过index来直接获取和修改任意项。但其实Array数组与ArrayList集合的差别很大,主要体现在命名空间、声明变量、下限、添加插入或移除某一范围元素的方法、维度、存储对象、存放方式、初始化大小、插入和删除项等方面的差异。
39.Array与ArrayList如何进行转换
从Array转换到ArrayList,为了避免重复编写大量相似的代码,通常的做法是定义一些转换函数或转换类。从ArrayList转换到Array相对比较简单,通过调用ArrayList内置的ToArray()方法就可实现。