【发布时间】:2020-02-12 15:08:25
【问题描述】:
我正在尝试查看天气字符串是否按字母顺序排列并弹出此错误
System.ArgumentOutOfRangeException:索引和长度必须引用字符串中的位置。 参数名称:长度 在 System.String.Substring(Int32 startIndex,Int32 长度) 在 Rextester.Program.Main(String[] args)**
public static void Main(string[] args)
{
string str = "bat\ncat\ndog\n";
int c = 0;
for (int i = 0; i < str.Length; i++)
{
if ((str.Substring(i,i + 1).Equals("\n")))
{
c++;
}
}
String[] strArray = new String[c + 1]; //declare with size
int g = 0;
String h = "";
for (int i = 0; i < str.Length; i++)
{
if ((str.Substring(i,i + 1).Equals("\n")))
{
strArray[g] = h;
h = "";
g = g + 1;
}
else
{
h = h + str.Substring(i,i + 1);
}
}
String p = "True";
for (int i = 0; i < g; i++)
{
if (i < (g - 1))
{
String f = strArray[i];
String g2 = strArray[i + 1];
char d = f[0];
char s = g2[0];
int d1 = (int)d;
int s1 = (int)s;
if (d1 > s1)
{
p = "False";
}
}
}
Console.WriteLine(p);
}
}
【问题讨论】:
-
恕我直言,拆分它,然后检查它们。只需几行代码,效率更高,出错率更低。
-
您在第一行末尾缺少一个分号。
-
我修好了。主要问题还是一样
-
这个问题与 Selenium 有什么关系?
-
因为我是从 web 元素中获取字符串
标签: c#