3.2C#语句

这里整理了C#程序员经常面试的面试题,摘自C#与.NET程序员面试宝典这本书中,希望这篇博客对大家有用。

25.传递参数的方法
      C#中有4中方法来传递参数:传值、传址、输出参数和数组参数。传值参数无需额外的修饰符,传址参数需要修饰符.ref,输出参数需要修饰符out,数组参数需要修饰params。

26.如何理解C#中的预处理器指令
      C#中的预处理器指令是在编译时调用的。预处理器指令通知C#编译器要编译哪些代码,并指出如何处理指定的错误和警告。C#预处理器指令还可以提示C#编辑器有关代码组织的信息。

27.简述C#中的Main()方法
      Main()方法是程序的入口点,程序从这里开始,也是从这里结束。需要注意的是,在一个C#程序中,Main()方法有且只能有一个。

28.如何理解C#中的指针
      C#中指针类型不继承Object,并且指针类型与Object之间不存在转换。此外,装箱和取消装箱也不支持指针。但是,C#允许在不同指针类型之间,以及指针类型与整形之间进行转换。

29.请举例System.Collections中常用的成员
      ArrayList的基类是System.Collections,System.Collections中常用的类有ArrayList、HashTable、StoredList,常用的接口有ICollection、IEnumerable、IList、System.Collections结构DictionaryEntity可定义设置或检索的字典键/值对。

30.C#提供了哪几种循环结构
      C#提供了do...while循环,while循环、for循环和foreach这4种循环语句。while循环与do...while循环非常类似,经常在循环次数不确定的场合,for循环用于处理已知循环次数的操作,而foreach循环用于处理已知集合的循环操作。

31.stringbuilder与string有什么区别
      在相同字符串的许多操作上,使用StringBuilder类会比String对象更有效率。对于少量的字符串操作,使用String类比较方便。.NET对String对象对象扩展了许多便捷的字符串处理方法。

32.如何实现自定义格式字符串输出
      通常,执行IFormattable的类也提供接收唯一格式的ToString()。在默认条件下,ToString()方法不接收任何参数,它继承于其他对象的类。IFormattable.ToString()方法接收一个IFormatProvider类型的参数,以允许类型的使用者提供格式化的方法。

33.怎样实现灵活强大的格式化输出
      IFormattable让类型的使用者有机会提供格式化的方法。GetFormat()方法返回格式化器,通常情况下,该格式化器的类型是一个实现了ICustomFormatter的类型对象。IFormatProvider接口和IFormattable接口一起可以实现灵活强大的格式化输出。

34.请列出HashTable几种常用的遍历方法
      HashTable有4种遍历方式。
      以string对象为键值遍历哈希表。
      以自定义对象为键值遍历哈希表。
      以DictionaryEntiy对象为键值遍历哈希表。
      通过继承IDictionaryEnumerator接口的对象来遍历哈希表。

你可能感兴趣的:(面试宝典)