关于如何在不使用ToString和的情况下将Int转换为C#中的字符串?的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于c#–如何在不使用Linq的情况下将IList转换为字符串[]、C#
关于如何在不使用ToString和的情况下将Int转换为C#中的字符串?的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于c# – 如何在不使用Linq的情况下将IList转换为字符串[]、C#将int转换为带有填充零的字符串?、C#将int转换为带填充零的字符串?、C#将int转换为带有填充零的字符串?等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- 如何在不使用ToString()的情况下将Int转换为C#中的字符串?(string转int不用integer)
- c# – 如何在不使用Linq的情况下将IList转换为字符串[]
- C#将int转换为带有填充零的字符串?
- C#将int转换为带填充零的字符串?
- C#将int转换为带有填充零的字符串?
如何在不使用ToString()的情况下将Int转换为C#中的字符串?(string转int不用integer)
在不使用任何本机toString功能的情况下,将以下int参数转换为字符串。
public string integerToString(int integerPassedIn){ //Your code here}
因为从一切继承Object
和Object
有ToString()
方法你会如何转换的int
一个string
不使用本地ToString()
方法?
字符串连接的问题在于它将调用ToString()
该链,直到它到达一个或到达Object
类为止。
如何在不使用C#的情况下将整数转换为字符串ToString()
?
答案1
小编典典像这样:
public string IntToString(int a){ var chars = new[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" }; var str = string.Empty; if (a == 0) { str = chars[0]; } else if (a == int.MinValue) { str = "-2147483648"; } else { bool isNegative = (a < 0); if (isNegative) { a = -a; } while (a > 0) { str = chars[a % 10] + str; a /= 10; } if (isNegative) { str = "-" + str; } } return str;}
更新:
这是另一个较短的版本,应该会表现更好,因为它消除了所有字符串连接,而有利于操纵定长数组。它支持的最大基数为16,但是很容易将其扩展到更高的基数。可能需要进一步改进:
public string IntToString(int a, int radix){ var chars = "0123456789ABCDEF".ToCharArray(); var str = new char[32]; // maximum number of chars in any base var i = str.Length; bool isNegative = (a < 0); if (a <= 0) // handles 0 and int.MinValue special cases { str[--i] = chars[-(a % radix)]; a = -(a / radix); } while (a != 0) { str[--i] = chars[a % radix]; a /= radix; } if (isNegative) { str[--i] = ''-''; } return new string(str, i, str.Length - i);}
c# – 如何在不使用Linq的情况下将IList转换为字符串[]
我不能使用Linq,因为我正在使用.NET 2.0进行编译.任何想法都会很好.
解决方法
ICollection<T>.CopyTo
:
string[] strings = new string[list.Count]; list.copyTo(strings,0);
我不太确定我是否理解无LINQ限制?听起来如果IList< T>,你会使用ToArray.有它.但事实证明它确实是因为IEnumerable< T> .ToArray是在IEnumerable< T>上定义的扩展方法了.其中IList< T>实现.那你为什么不用它呢?
C#将int转换为带有填充零的字符串?
在 C# 中,我有一个整数值,需要将其转换为字符串,但它需要在之前添加零:
例如:
int i = 1;
当我将其转换为字符串时,它需要变为 0001
我需要知道 C# 中的语法。
C#将int转换为带填充零的字符串?
在C#中,我有一个整数值,需要对字符串进行控制,但需要在之前添加零:
例如:
int i = 1;
当我将其转换为字符串时,它需要变为0001
我需要知道C#中的语法。
#1楼
只是
int i=123;
string paddedI = i.ToString("D4");
#2楼
要填充int i
以匹配int x
的字符串长度,当两者都可以为负数时:
i.ToString().PadLeft((int)Math.Log10(Math.Abs(x < 0 ? x * 10 : x)) + 1, ''0'')
#3楼
C#6.0样式字符串插值
int i = 1;
var str1 = $"{i:D4}";
var str2 = $"{i:0000}";
#4楼
int p = 3; // fixed length padding
int n = 55; // number to test
string t = n.ToString("D" + p); // magic
Console.WriteLine("Hello, world! >> {0}", t);
// outputs:
// Hello, world! >> 055
#5楼
i.ToString().PadLeft(4, ''0'')
- 好的,但不适用于负数
i.ToString("0000");
- 明确的形式
i.ToString("D4");
- 简短格式说明符
C#将int转换为带有填充零的字符串?
在C#中,我有一个整数值,需要将其转换为字符串,但需要在前面加上零:
例如:
int i = 1;
当我将其转换为字符串时,它需要变为0001
我需要知道C#中的语法。
答案1
小编典典i.ToString().PadLeft(4, ''0'')
-可以,但不适用于负数i.ToString("0000");
-显式格式i.ToString("D4");
-短格式格式说明符$"{i:0000}";
-字符串插值(C#6.0+)
今天关于如何在不使用ToString和的情况下将Int转换为C#中的字符串?的分享就到这里,希望大家有所收获,若想了解更多关于c# – 如何在不使用Linq的情况下将IList转换为字符串[]、C#将int转换为带有填充零的字符串?、C#将int转换为带填充零的字符串?、C#将int转换为带有填充零的字符串?等相关知识,可以在本站进行查询。
本文标签: