package com.hu;
public class Demo3 {
public static void main(String[] args) {
int i=0;
for (i; i < 100; i++) {
}
}
}
谁能告诉我为什么是错的
Java语言for循环语句第一个部分不允许用 循环变量 本身。
可以让它空着,如下:
for (; i < 100; i++) {
}
实际上,第一部分和第三部分都可以空。
如下这样也行:
for (; i < 100;) {
}
是编译错误还是运行时错误呢
for (i; i < 100; i++) i已经被赋值了,可以空着,但分号还是需要的
将int i=0;写进去 试试
for(int i=0;i<=100;i++)
{
}
int i=0;
for (i; i < 100; i++) {
}
for循环里的i多余了,因为你上面已经定义了一个全局的i,在for循环中第一个i没有任何作用。
要么给for中的第一个i重新赋值,比如i=0;
要么把for循环里的i去掉,直接写成for (; i < 100; i++) {
};
这个for的第一个分号前是对变量的初始化,因此不能写i,因为i的值不确定,不能完成初始化,就会报错啦
for 语句的第一个分号必须是基础语句 ( 赋值语句 或者 方法调用 ), 写个i放在哪里当然报错. 编译器也不知道你想干什么
int i =0;
for (; i < 10; i++) {
System.out.println(i);
}
建议这样写。因为你上面已经定义好i了,下面就没必要再去写一次,直接写后面就好了。