来自我的AP计算机科学一本评论书:
考虑这个程序段.您可以假设
wordList已声明为ArrayList<String>.Run Code Online (Sandbox Code Playgroud)for(String s : wordList) if(s.length() < 4) System.out.println("SHORT WORD");"SHORT WORD可以打印的最大次数是多少?"
该书说答案是wordList.size(),但为什么不是wordList.size() - 1?ArrayList的索引是否与常规数组不同?我的书说明了它自动添加一个索引,但我可能已经读错了.
该书说答案是wordList.size(),但为什么不是wordList.size() - 1?
它不会也不会,因为它可以打印的最大次数是所有单词wordList都少于四个字符.
我认为你可能会混淆a中ArrayList有效索引的元素数量ArrayList.ListJava中的数组和s是从零开始的,所以从中运行0到list.size() - 1.这意味着最后一个元素是list.size() - 1.这样想吧.如果你有这些数字0, 1, 2, 3,你总共拥有多少个数字?你有四个号码.但是,如果将这些数字推入基于零的数组中,则第一个元素位于位置0,第二个元素位于位置1,依此类推,直到您在位置具有最后一个元素3.
这张照片可以帮助你:
Indices: 0 1 2 3
+---+---+---+---+
Values: | 1 | 2 | 3 | 4 |
+---+---+---+---+
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1371 次 |
| 最近记录: |