java - 查找包含空(非空定义)字符串的下一个位置的索引

标签 java search indexing arraylist

在一个较大的项目中,我从一个文本文件创建了一个字符串 ArrayList,其中文本文件的每一行在 ArrayList 中都有自己的索引,因此这些行按顺序存储在列表中。

我需要以下方法来返回 ArrayList 中包含空行的下一个索引。由于这些行是从文件中读入的,因此在读入行时不能将其定义为空...或者至少我也无法让它以这种方式工作。

这是我到目前为止的代码:

public static int nextBlankIndex(int num){
    //returns the index in the file input arraylist of the next blank line after line number "num"
    //used to find spaces between questions
    for(int i=0; i<in.size();i++)
    {
        String line = in.get(i);
        if(line.equals(""));
            return (num-1)+i;
    }
    return -1;
}

一如既往,我们非常感谢任何建议或编辑。预先感谢您。

最佳答案

看起来您正在通过在 return 语句中添加 num-1 来调整结果。但您并没有将其添加到使用 i 的所有其他位置,因此搜索始终从第一行开始。

最简单的调整是在 i = num 处开始循环。

public static int nextBlankIndex(int num) {
    for (int i = num; i < in.size(); i++) {
        String line = in.get(i);
        if (line.equals("")) {
            return i;
        }
    }
    return -1;
}

if 语句后面还有一个杂散的分号。

关于java - 查找包含空(非空定义)字符串的下一个位置的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29616667/

相关文章:

java - 关于 com.jcraft.jsch.JSchException : UnknownHostKey: x. y.com 的查询。 DSA key 指纹为 "ac:ew:...."

java集合synchronizedMap不工作

java - 如何访问 Strtus2 OGNL 表达式中的多个操作属性?

java - 我正在制作 NLP 应用程序,但模型太大

algorithm - 在现代 CPU 上,二进制搜索在哪个 n 时变得比线性搜索更快?

php - 标记层次结构和搜索

javascript - elasticlunr.js 不显示搜索查询结果

ruby - 比 O(n) 更快地获取数组元素的索引

python - TensorFlow,批量索引(第一维)和排序

sql - 带排除项的 PostgreSQL 唯一约束