asp.net代码练习 work081 集合操作
webform1.aspx<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="work081.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>集合操作</title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
webform1.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace work081
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(CollectionDemo.Test(100000));
Response.Write("===========================<br>");
Response.Write(CollectionDemo.Test(100000));
Response.Write("===========================<br>");
Response.Write(CollectionDemo.Test(100000));
Response.Write("===========================<br>");
}
}
}collectiondemo.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace work081
{
/// <summary>
/// 测试对集合进行操作所花费的时间
/// </summary>
public class CollectionDemo
{
private CollectionDemo()
{
}
/// <summary>
/// 数组操作花费的时间
/// </summary>
/// <param name="maxCount"></param>
/// <returns></returns>
private static TimeSpan ArrayOperation(int maxCount)
{
DateTime start = DateTime.Now;
int[] intList = new int;
int j = 0;
for (int i = 0; i < maxCount; i++)
{
intList = i;
}
for (int i = 0; i < maxCount; i++)
{
j = intList;
}
DateTime end = DateTime.Now;
return end - start;
}
/// <summary>
/// 列表集合
/// </summary>
/// <param name="maxCount"></param>
/// <returns></returns>
private static TimeSpan ArrayListOperation(int maxCount)
{
DateTime start = DateTime.Now;
//System.Collections.ArrayList arrayList = new System.Collections.ArrayList();
System.Collections.ArrayList arrayList = new System.Collections.ArrayList(maxCount);
int j = 0;
for (int i = 0; i < maxCount; i++)
{
arrayList.Add(i);
}
for (int i = 0; i < maxCount; i++)
{
j = (int)arrayList;
}
DateTime end = DateTime.Now;
return end - start;
}
/// <summary>
/// 泛型
/// </summary>
/// <param name="maxCount"></param>
/// <returns></returns>
private static TimeSpan GenericListOperation(int maxCount)
{
DateTime start = DateTime.Now;
//System.Collections.Generic.List<int> intList = new List<int>();
System.Collections.Generic.List<int> intList = new List<int>(maxCount);
int j = 0;
for (int i = 0; i < maxCount; i++)
{
intList.Add(i);
}
for (int i = 0; i < maxCount; i++)
{
j = intList;
}
DateTime end = DateTime.Now;
return end - start;
}
public static string Test(int maxCount)
{
string result = string.Empty;
TimeSpan ts1 = ArrayOperation(maxCount);
TimeSpan ts2 = ArrayListOperation(maxCount);
TimeSpan ts3 = GenericListOperation(maxCount);
result += string.Format("执行{0}次操作:<br>",maxCount);
result += string.Format("数组耗时{0}毫秒。<br>",ts1.TotalMilliseconds);
result += string.Format("ArrayList耗时{0}毫秒。<br>",ts2.TotalMilliseconds);
result += string.Format("泛型集合耗时{0}毫秒。<br>",ts3.TotalMilliseconds);
return result;
}
}
}
https://blog.51cto.com/u_15356972/3775762
页:
[1]