您的位置:首页 > 编程语言 > C#

【转】C#优化字符串操作

2007-10-11 23:23 447 查看
1.Convert.ToInt32与Int32.Parse的恩恩怨怨

2.Split的3种用法

3.@"abc"和"abc"区别在那里

4.保留2位有效小数及四舍五入

5.url传递中文的解决方案

6.把123456789转换为12-345-6789的3种方法

7.交换两个指定位置字符的4种方法

8.“%10”的妙用

9.输出21个AAAAAAAAAAAAAAAAAAAAA的巧妙做法

1.Convert.ToInt32Int32.Parse的恩恩怨怨

这2个方法都可以把把string解析为int,那么我们一定会有疑问:到底他们有什么区别?什么时候该用什么?性能如何等等。

其实在2.0里还有Int32.TryParse也实现了同样的效果。

using System;

using System.Collections.Generic;

using System.Text;

namespace ConsoleApplication1

string myString1 = "1234";

//string myString = null;//清清月儿 http://blog.csdn.net/21aspnet/
int myint = 0;

Console.Write(System.DateTime.Now.ToString()+" "+System.DateTime.Now.Millisecond.ToString() + " ");

for (int i = 0; i < 1000000;i++ )

Console.Write(myint + " \r\n");

Console.Write(System.DateTime.Now.ToString() + " " + System.DateTime.Now.Millisecond.ToString() + "\r\n ");

string myString2 = "1234";

for (int i = 0; i < 1000000; i++)

Console.Write(myint + "\r\n ");

Console.Write(System.DateTime.Now.ToString() + " " + System.DateTime.Now.Millisecond.ToString() + " ");

string myString3 = "1234";

for (int i = 0; i < 1000000; i++)

Console.Write(myint + "\r\n ");

Console.Write(System.DateTime.Now.ToString() + " " + System.DateTime.Now.Millisecond.ToString() + "\r\n ");

我们让3个方法执行100万次转换毫秒差异:

static void Main(string[] args)

string aa = "1234,234523,4324,324";

string[] str = aa.Split(',');

foreach (string bb in str)

static void Main(string[] args)

public static string[] Split(string input, string pattern)

public static void Main ()

public static string[] Split(string input,string pattern)

static void Main()

static void Main()

string a = "123456789";

a = int.Parse(a).ToString("##-###-####");

Console.Write(a);

方法二:

string a = "123456789";

a = a.Insert(5, "-").Insert(2, "-");

Console.Write(a);

方法三:

using System;

using System.Collections.Generic;

using System.Text;

using System.Text.RegularExpressions;

namespace ConsoleApplication1

static void Main()

static void SwapChar(ref string s, int i1, int i2)

static void Main()

static string SwapChar(string s, int p1, int p2)

static void Main()

public static string SwapChar(string str, int a, int b)

方法四:

using System;

using System.Collections.Generic;

using System.Text;

using System.Text.RegularExpressions;

namespace ConsoleApplication1

static void Main()

...{




Random r = new Random();




Console.WriteLine(r.Next() % 10);//1-9


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


Console.WriteLine(r.Next() % 10);


}

[b]9.输出21个AAAAAAAAAAAAAAAAAAAAA的巧妙做法




new构造器的理解

如果要你创建一个由21个"A"字符构成的字符串,你会怎么做?

string str = "AAAAAAAAAAAAAAAAAAAAA";//老实型

string str = new string('A', 21);//简单聪明

10.compare()与compareTo()方法

一样的功能,只是两个接口的两个方法而已

compare是Comparatable的方法,compareTo是Comparator的方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: