sha*_*har 3 java for-loop list
如何使用索引迭代列表数据结构.例如,考虑一个列表形式的句子,每个元素都是一个单词.我可以使用索引单步执行每个单词吗?像这样的东西 -
// sentence defined something like this - List<String>
int size = sentence.size();
for (int i=0; i<size-1; i++)
{
System.out.println(sentence[i] + " " + sentence[i+1]);
}
Run Code Online (Sandbox Code Playgroud)
当然上面的代码不起作用,但是可以在这些行上做点什么吗?正如您所看到的,我想访问两个连续的元素并使用迭代器,它开始变得非常混乱.
您可以使用该get(i)方法代替[i]:
for (int i=0; i<size-1; i++) {
System.out.println(sentence.get(i) + " " + sentence.get(i+1));
}
Run Code Online (Sandbox Code Playgroud)
List实例与数组不同.他们有特定的方法来获取某些索引的项目.试试这个:
// sentence defined something like this - List<String>
int size = sentence.size();
for (int i=0; i<size-1; i++)
{
System.out.println(sentence.get(i) + " " + sentence.get(i + 1));
}
Run Code Online (Sandbox Code Playgroud)
现在,如果你有一个数组(例如String[] sentence = new String[]{"hello", "there"}),你所拥有的就可以了.
作为旁注,Java有一个for-each循环,可以在两个数组和Lists上使用:
for (String s : sentence) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
当然,这不能在你的情况下使用,因为你在循环的每次迭代中访问多个索引处的元素 - 但重要的是要知道存在这样的东西.
| 归档时间: |
|
| 查看次数: |
28432 次 |
| 最近记录: |