using System;
using System.Diagnostics;
namespace ConsoleApplication_C_Sharp
{
class Program
{
public int Length { get; private set; }
static void Main(string[] args)
{
string s = "c#:java:c++:php";
var sw1 = Stopwatch.StartNew();
for (int i = 0; i < 1000000; i++)
{
int count = 0;
for (int j = 0; j < s.Length; j++)
{
if (s[j] == ':')
{
count++;
}
}
}
sw1.Stop();
var sw2 = Stopwatch.StartNew();
for (int i = 0; i < 1000000; i++)
{
int count = 0;
int j = 0;
while ((j = s.IndexOf(':', j)) != -1)
{
j++;
count++;
}
}
sw2.Stop();
Console.WriteLine("for loop: " + sw1.Elapsed.TotalMilliseconds + " ms");
Console.WriteLine("IndexOf in while loop: " + sw2.Elapsed.TotalMilliseconds + " ms");
}
}
}
/*
run:
for loop: 79.2941 ms
IndexOf in while loop: 35.2052 ms
*/