编写ASP.NET应用程序的技巧(2)_.Net教程
推荐:ASP.NET 2.0中构造个性化网页在WEB应用中,我们经常要创建个性化的网页。什么是个性化的网页呢?举个例子,大家经常使用熟悉的搜索引擎google,当我们设置了每次要使用的个性化语言偏好,比如使用中文后,在下次使用google时
4、使用StringBuilder类
字符串在.NET框架中是不可变的,这意味着改变字符串的操作符和方法会返回字符串的改变后的拷贝,这意味着性能还有提高的空间。当进行大量的字符串操作时,使用StringBuilder类就是一种比较好的选择了。
下面的C#代码测试用二种方式从10000个子字符串中生成字符串所需要的时间。第一次使用了一个简单的字符串串联操作;第二次使用了StringBuilder类。
要想查看结果字符串,可以去掉下面的代码中注解行的注解符号:
以下为引用的内容: < %@ Page Language=”C#” %> < script runat=”server”> void Page_Load(Object Source, EventArgs E) { int intLimit = 10000; DateTime startTime; DateTime endTime; TimeSpan elapsedTime; string strSub; string strWhole = “”; // 首先执行字符串连接操作 startTime = DateTime.Now; for (int i=0; i < intLimit; i ) { strSub = i.ToString(); strWhole = strWhole “ “ strSub; } endTime = DateTime.Now; elapsedTime = endTime - startTime; lblConcat.Text = elapsedTime.ToString(); // lblConcatString.Text = strWhole; // 使用stringBuilder类进行同样的操作 startTime = DateTime.Now; StringBuilder sb = new StringBuilder(); for (int i=0; i < intLimit; i ) { strSub = i.ToString(); sb.Append(“ “); sb.Append(strSub); } endTime = DateTime.Now; elapsedTime = endTime - startTime; lblBuild.Text = elapsedTime.ToString(); // lblBuildString.Text = sb.ToString(); } < /script> < html> < body> < form runat=”server”> < h1>String Concatenation Benchmark< /h1> Concatenation: < asp:Label id=”lblConcat” runat=”server”/> < br/> < asp:Label id=”lblConcatString” runat=”server”/> < br/> < br/> StringBuilder: < asp:Label id=”lblBuild” runat=”server”/> < br/> < asp:Label id=”lblBuildString” runat=”server”/> < /form> < /body> < /html> |
二种方式的差别是相当大的:使用StringBuilder类的Append方法的速度比使用字符串连接的速度快近200倍。
分享:ASP.NET中利用存储过程实现模糊查询一、建立存储过程 在MSSQL中的Northwind数据库中为employess表新建存储过程(作用按LastName进行模糊查询): CREATE PROCEDURE Employess_Sel @lastname nvarchar (20) AS select
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP发送Email实例(可带附件)
- js实现广告漂浮效果的小例子
- asp.net Repeater 数据绑定的具体实现
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- VS2010 水晶报表的使用方法
- ASP.NET中操作SQL数据库(连接字符串的配置及获取)
- asp.net页面传值测试实例代码
- DataGridView - DataGridViewCheckBoxCell的使用介绍
- asp.net中javascript的引用(直接引入和间接引入)
- 三层+存储过程实现分页示例代码
- 相关链接:
- 教程说明:
.Net教程-编写ASP.NET应用程序的技巧(2)。