【发布时间】:2011-07-04 21:46:03
【问题描述】:
我正在尝试在 java 中编写一个小方法,但我无法弄清楚。我想要做的是输入一个字符串,然后将 int 变量的值设置为数组中 this 的索引,即如果我有一个由
组成的数组[0] 'hi guys'
[1] 'this'
[2] 'is'
[3] 'sparta'
我的整数的值设置为0,我想找到“ta”的第一次出现,这将是[3],所以我希望函数将我的整数设置为3。
我目前所拥有的完全是错误的,有什么简单的方法可以做到这一点吗?我已经定义了一个名为 get() 的函数,它返回当前行的值(即 get(0) 在这种情况下将返回“嗨,伙计们”)。谁能帮帮我?
非常感谢:)
public void find(String line ) {
boolean found = false;
int i = cursor + 1;
while ( found = false && i!=cursor) {
if ((doc.get(cursor).indexOf( line ) > 0)){
cursor = i;
found = true;
}else {
cursor++;
cursor%=doc.size();
i++;
}
}
}
【问题讨论】:
-
这是作业吗?如果是这样,你应该这样标记它。
-
@steveom:你肯定是在杂草丛中,但为了帮助你,我们需要一些信息:你想放入数组和搜索的文本数据来自哪里? doc 现在是什么类型的对象?您是否正在尝试读取文件?
-
@steveom:还有一些明显的错误和遗漏:
found = false应该是found == false你现在分配它而不是比较。我也看不到您实际上正在搜索子字符串的任何地方...从您的示例中:`找到“ta”的第一次出现` -
@Paul Sasik,修复了 equals 问题。 doc 是我定义的类的一个瞬间,具有数组的所有基本功能。
标签: java arrays string search indexof