在我的应用程序中,生成的字符串长度可以在1到100之间变化(不使用随机数算法)。但我希望如果长度小于7而不是需要添加整数1,2,3 ..直到它的大小达到7.我使用while循环实现它:
If generatedUserName.Length < 7 Then
Dim count As Int32 = 0
While generatedUserName.Length < 7
generatedUserName = generatedUserName & count.ToString()
count = count + 1
End While
End If
还有其他更好的方法,比如enbuild函数Tostring()带有一些参数吗?
答案 0 :(得分:6)
最简单的方法是:
if (generatedUserName.Length < 7)
{
generatedUserName = (generatedUserName + "1234567").Substring(0, 7);
}
效率稍低,但不太可能造成瓶颈......
另一种选择是:
if (generatedUserName.Length < 7)
{
string suffix = "1234567".Substring(0, 7 - generatedUserName.Length);
generatedUserName = generatedUserName + suffix;
}
稍微高效(但可怕)的方式:
private static readonly string[] Suffixes = {
"1234567", "123456", "12345", "1234", "123", "12", "1"
};
...
if (generatedUserName.Length < 7)
{
generatedUserName = generatedUserName + Suffixes[generatedUserName.Length];
}