gpt4 book ai didi

java - 如何使java中的条件 block 只执行一次?

转载 作者:行者123 更新时间:2023-11-29 09:51:47 24 4
gpt4 key购买 nike

考虑一个文件读取场景,其中第一行是标题。逐行循环文件时,将使用“if 条件”来检查当前行是否为第一行。

for(Line line : Lines)
{
if(firstLine)
{
//parse the headers
}else
{
//parse the body
}
}

既然控件已经进入“if block ”,在所有其他情况下,检查“if 条件”是浪费。

Java 中是否有这样的概念,一旦执行后,特定的代码行就消失了?

我认为如果引入这将是一个很棒的功能,或者它是否已经存在?

编辑:感谢您的回答。正如我所见,有许多基于“划分数据集”的方法。因此,考虑有一条“特殊线路”,而不是“第一线”。

for(Line line : Lines) //1 million lines
{
if(specialLine)
{
//handle the special line
}else
{
//handle the rest
}
}

在上面的代码块中,假设特殊行仅在 100 万次迭代的一半后才出现,您将如何有效地处理这种情况?

最佳答案

稍微改变一下逻辑怎么样!

因为标题是第一行,所以你可以获取 firstLine 并单独解析它,然后从第二行开始解析正文:

List firstLine = Lines.get(0);
//parse the headers ^------------------Get the first line
for (int i = 1; i < Lines.size(); i++) {
// ^--------------------------------Parse the body starting from the 2nd line
//parse the body
}

在这种情况下,您不需要任何验证。

关于java - 如何使java中的条件 block 只执行一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49147729/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com