c# - c#空数组上的“索引超出数组范围”
问题描述
我收到错误
“'指数数组的边界之外”
string Open = array[0].ToString();
当数组为空时在此行上。
我使用“if”语句来查看是否可以在数组为空时绕过它。
但是,为什么我仍然收到此错误?我怎样才能绕过/修复它?
if (array != null || array.Length != 0)
{
int c = array.Count();
string Open = array[0].ToString(); <--- ERROR
}
解决方案
您在 if 语句中使用了逻辑 OR 运算符。您应该使用 AND 运算符&&
。
如果两个条件中的任何一个为真,OR 将评估为真,因此只要array
不为空,您的 if 语句就会运行。
它应该是:
if (array != null && array.Length != 0)
推荐阅读
- php - 列已创建,但未发布任何值
- javascript - 来自 React.forwardRef 的 ref 为 null
- arrays - Range to Array 在 VBA 中不知何故被搞砸了
- java - Java 泛型编译时错误和原始类型
- angular - 在 Angular 中创建动态级联菜单
- amazon-web-services - crontab 中的 Amazon s3 下载不起作用?
- c# - ContentView 被 ScrollView 压扁
- shell - 如何通过 shell 脚本创建显示所有目录的命令?
- c - 不能将局部变量复制到全局变量C
- xaml - NavigationView.PaneDisplayMode 仅在调整应用程序窗口大小后更改 UI