java将int转换成字符串_将int转换为字符串?

如何在C#中将int数据类型转换为string数据类型?

#1楼

string str = intVar.ToString();

在某些情况下,你不必使用ToString()

string str = "hi " + intVar;

#2楼

进一步研究@ Xavier的回复, 这是一个页面,它可以快速比较几种不同的方式,从100次迭代到21,474,836次迭代。

这似乎是以下几点之间的关系:

int someInt = 0;

someInt.ToString(); //this was fastest half the time

//and

Convert.ToString(someInt); //this was the fastest the other half the time

#3楼

using System.ComponentModel;

TypeConverter converter = TypeDescriptor.GetConverter(typeof(int));

string s = (string)converter.ConvertTo(i, typeof(string));

#4楼

万一你想要二进制表示,你仍然从昨晚派对喝醉:

private static string ByteToString(int value)

{

StringBuilder builder = new StringBuilder(sizeof(byte) * 8);

BitArray[] bitArrays = BitConverter.GetBytes(value).Reverse().Select(b => new BitArray(new []{b})).ToArray();

foreach (bool bit in bitArrays.SelectMany(bitArray => bitArray.Cast().Reverse()))

{

builder.Append(bit ? '1' : '0');

}

return builder.ToString();

}

注意:关于不能很好地处理字节序的东西......

编辑:如果你不介意牺牲一点内存来提高速度,可以使用下面的代码生成一个带有预先计算字符串值的数组:

static void OutputIntegerStringRepresentations()

{

Console.WriteLine("private static string[] integerAsDecimal = new [] {");

for (int i = int.MinValue; i < int.MaxValue; i++)

{

Console.WriteLine("\t\"{0}\",", i);

}

Console.WriteLine("\t\"{0}\"", int.MaxValue);

Console.WriteLine("}");

}

#5楼

string myString = myInt.ToString();


版权声明:本文为weixin_35663151原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。