日期:2014-05-20  浏览次数:20923 次

问C#面试题两道,急
1、String和StringBuilder的区别?
2、类的static型构造方法是干什么用的?

------解决方案--------------------
楼主是学生么?书到用时方恨少吧!
------解决方案--------------------
请问你现在是在面试中呢还是已经面试完了?
------解决方案--------------------
学生的多。lz这样不对啊!
------解决方案--------------------
能上网还不会啊。
------解决方案--------------------
String是个特殊的字符串类型,每次复制都会重新分配内存空间,
StringBuilder是用来解决string这一弊端的,可以用Append()方法来连接字符串,
不会重新分配内存,
static弄构造函数是用初始化static类的,先于非static构造函数执行,
自己看书吧,基础内容
------解决方案--------------------
还有一点,String类型一开始就分配了一段固定长度的内存空间,当发现不够用的再申请同样长度的空间,这样会造成空间上的浪费。StringBuilder就很好地解决了这个问题。
此外,两者的执行效率也不一样,你自己看看书,这些东西都能找到。
------解决方案--------------------
stringbuilder 可变字符串 string 则不同
static 静态访问
------解决方案--------------------
静态构造函数用于初始化任何静态数据,或用于执行仅需执行一次的特定操作。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数。

public class test
{
public int m_nX;
public static int y = 30;
static test()
{
y = 150;
}
public test()
{
m_nX = 8;
y = 72;
}
}
private void button1_Click(object sender, EventArgs e)
{
int x = test.y;
test d = new test();
int z = test.y;
}
------解决方案--------------------
x = 150
z = 72
------解决方案--------------------
kingofbull(大力牛魔王) ( ) 信誉:100 Blog 2007-01-12 13:31:25 得分: 0


还有一点,String类型一开始就分配了一段固定长度的内存空间,当发现不够用的再申请同样长度的空间,这样会造成空间上的浪费。StringBuilder就很好地解决了这个问题。
此外,两者的执行效率也不一样,你自己看看书,这些东西都能找到。



说反了...