public class contains {
public static void main(String[] args) {
int[] array = new int[] {0, 1, 2, 3, 4};
int sum = 0;
for (i=0, i<=array.length, i++) {
if (array[i] == 4) {
return sum;
}
sum++;
}
return 0;
}
}
我不确定为什么上面的代码失败了。当我尝试编译它时,我得到如下错误。为什么会这样?我想看看我的数组中的索引4是什么。
contains.java:5: error: not a statement
for (i=0, i<=array.length, i++) {
^
contains.java:5: error: ';' expected
for (i=0, i<=array.length, i++) {
^
contains.java:5: error: ';' expected
for (i=0, i<=array.length, i++) {
^
contains.java:6: error: illegal start of expression
if (array[i] == 4) {
^
contains.java:6: error: ')' expected
if (array[i] == 4) {
^
contains.java:6: error: not a statement
if (array[i] == 4) {
^
contains.java:6: error: ';' expected
if (array[i] == 4) {
^
contains.java:11: error: illegal start of type
return 0;
答案 0 :(得分:0)
您没有声明i
。 for
循环的部分用分号分隔。 Java数组的初始索引为0
,最后一个元素位于array.length - 1
,因此您需要<
(而不是<=
)。您不能return
来自int
main
。我想你想要的东西,
public static void main(String[] args) {
int[] array = new int[] { 0, 1, 2, 3, 4 };
int sum = 0;
for (int i = 0; i < array.length; i++) {
if (array[i] == 4) {
break;
}
sum++;
}
System.out.println(sum);
}
输出
4
array[4]
为4
,所以我认为总和应为4
。