- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
编辑
我把它留在这里,尽管它让我看起来很愚蠢,因为它是一个微妙的错误,如果你在深夜工作并且不注意的话,它会咬你。感谢 Visual Studio 拥有如此智能的解析器。
基本上我错过了我有嵌套循环,所以 continue
语句在这里基本上没有值(value),因为它继续 foreach
循环,而不是 for
循环。
原始问题
我在工作簿上运行搜索,寻找符合所有字符串搜索条件的工作表。在 Visual Studio 编辑器中,i++
带有下划线,表示“无法访问的代码”。
/// <summary>
/// Finds the first sheet that has cells that match all the criteria.
/// </summary>
/// <param name="wb"></param>
/// <param name="searches"></param>
/// <returns></returns>
public static ISheet FindSheet( this IWorkbook wb, params string[] searches )
{
if( null == wb || null == searches )
return null;
for( int i = 0; i < wb.NumberOfSheets; i++ )
{
var sheet = wb.GetSheetAt( i );
foreach( var search in searches )
{
var cell = sheet.FindCell( search );
if( null == cell )
continue;
}
return sheet;
}
return null;
}
我认为 continue
语句在这里有明确的含义:“如果任何搜索条件返回 null
单元格,则继续下一次迭代。否则,只需返回在本次迭代中找到的工作表。”
没有 CONTINUE 语句的更正代码
/// <summary>
/// Finds the first sheet that has cells that match all the criteria.
/// </summary>
/// <param name="wb"></param>
/// <param name="searches"></param>
/// <returns></returns>
public static ISheet FindSheet( this IWorkbook wb, params string[] searches )
{
if( null == wb || null == searches )
return null;
for( int i = 0; i < wb.NumberOfSheets; i++ )
{
var sheet = wb.GetSheetAt( i );
if( searches.All( s => null != sheet.FindCell( s ) ) )
return sheet;
}
return null;
}
最佳答案
在这里,您的 for 循环完全没用。在第一次迭代之后,无论如何它都会返回。当然,您的 foreach 循环有一个 continue
语句,但这仅适用于 foreach
循环。这就是您的代码无法访问的原因。
因此,只会分析第一张纸。如果这是您想要的,您可以简单地删除 for
循环并将工作表定位在索引 0 处,或者您需要重新安排您的循环。
关于c# - 为什么是 i++ "unreachable code"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22573157/
我正在学习 React.js。我大约 2 天前搜索了我的问题的解决方案,但我不知道问题是什么。 render() { return ( { this.state.menus.
我是在 React 中创建 GET 请求的新手。当有人在输入字段中输入 url 时,我试图从 Instagram 内容中获取 media_id。有趣的是,我确实在 Inspector 中收到了以下 G
我在 C 应用程序的套接字之间发送数据。我首先绑定(bind)“接收器”以监听 127.0.0.1 (localhost) 的某个端口(阻塞 - 在单独的线程中)。然后我开始向这个端口发送数据。 我从
我有两个关于常见的目标无法到达异常的问题。处理它的最佳做法是什么,例如您有:国家有城市,城市有街道。- 你是否放入 Country 的构造函数 new City() 和 City 的构造函数 new
我在带有 innodb 引擎的 mysql 数据库中有一个非常大的表。 现在我想使用以下脚本引入一个新索引: 几分钟后它告诉我: ERROR: Error when running failback
我有一个简单的小装饰器,它将函数调用的结果作为函数属性缓存在 dict 中。 from decorator import decorator def _dynamic_programming(f, *
我收到代码的错误“RuntimeError: unreachable in rustwasm” 错误信息: Uncaught (in promise) RuntimeError: unreachabl
已移动:https://superuser.com/questions/782549/udp-client-sending-icmp-port-unreachable-when-receiveing-
我反编译了一个APK文件,然后尝试编译它并收到“无法访问的语句”编译器错误,我想知道这是混淆器技巧还是反编译器失败?这怎么可能?用过的 dex2jar和 Java Decompiler 这是反编译的方
灵感来自这个问题的答案 Is empty case of switch in C# combined with the next non-empty one? 此术语唯一出现在 C# 语言规范的 §6
这个问题在这里已经有了答案: Why does Java have an "unreachable statement" compiler error? (8 个答案) 关闭 7 年前。 您好,我尝
我正在研究 Java PDF 库。 我已经尝试过了 org.apache.pdfbox File file = new File("file.pdf"); PDDocument document =
大家晚上好, 我在介绍性 java 类的一些代码中遇到了编译问题。手头的应用程序创建了一个计算器。当尝试编译时,我收到一条错误,指出我有一个“无法访问的语句”,这让我相信我陷入了某个循环(同样,我正在
为什么我会收到第 92 行是无法访问的语句的错误?基本上我想做的是跳过一些代码,如 21-22-23... 如果用户输入类似 11-12-13... import java.util.*; publi
我的程序中有些东西没有意义。可能是我的 while 语句在它的循环中嵌入了几个不同的 if 语句。但主要错误是指向我的 while 循环之后,我似乎无法弄清楚。我评论了错误的地方。 这是程序的样子:
这个问题在这里已经有了答案: Unreachable code compiler error [duplicate] (7 个答案) 关闭 7 年前。 为什么这个方法会返回错误:Error: Unr
我目前正在使用 Eclipse 编写一个新插件。我一直在网上关注教程,但是遇到了错误。我的 friend 一直在帮助编写代码,但他不确定此修复程序。我遇到了“无法访问的代码”错误。我已经标记了错误的位
Eclipse 强制我对任何 switch 使用 default 案例,包括那些列出所有声明的 enum 值的案例,据称是因为语言规范 [ 1 ].这是不幸的,因为并行开发项目的 Android St
这是我的 Android代码。我在下面的行 Toast 中有错误上面写着“Unreachable Statement”,我知道这个错误来自 return我的If但是不知道怎么解决 错误部分: do {
我有两台机器正在测试我的代码,一台工作正常,另一台我遇到了一些问题,我不知道为什么会这样。 我正在为项目的网络部分使用一个对象 (C++)。在服务器端,我这样做:(为清楚起见删除了错误检查)
我是一名优秀的程序员,十分优秀!