我要在多处加Array_sp不想多使用内存 具体有什么办法么?
string[] Array_sp ={ " ", " ", " ", " "};//编号,名字,数量,服务人 Array_sp[0] = Convert.ToString(SqlDataReader1[ "编号 "]).Trim();
Array_sp[1] = Convert.ToString(SqlDataReader1[ "名字 "]).Trim();
Array_sp[2] = Convert.ToString(SqlDataReader1[ "havefwr "]).Trim();
Array_sp[3] = Convert.ToString(SqlDataReader1[ "定价 "]).Trim();
码 "]).Trim();
arraylistA.Add(Array_sp); //
HashtableB.Add(Array_sp); //
HashtableB.Add(Array_sp); 所占用内存增加了么?Array_sp如何变为静态的 也就是说arraylistA.Add(Array_sp);
HashtableB.Add(Array_sp); 虽然都增加了Array_sp 但是内存还是占用Array_sp一个内存而不是2个。
问题主要是:我要在多处加Array_sp不想多使用内存 具体有什么办法么?
------解决方案--------------------做成静态数组吧...
这样.只会实例化一次...
string[] Array_sp ={ " ", " ", " ", " "};
改为:
public static string[] Array_sp ={ " ", " ", " ", " "};
其实.局部的东西.无论是变量还是对象...
在方法或事件结束后就会自动释放.而静态的.只有在程序结束后才会释放...
至于你要怎样用.就看您的实际情况了...
------解决方案--------------------静态的在调用时.如果在当前类中.不可以使用this关键字...
在其它类中调用.必须在之前加上类名...
------解决方案--------------------up