我正在测试循环,当我尝试这个时它不起作用:
public static void main(String[] args) {
for(int i=0;i==5;i++){
System.out.println(i);
}
}
当我运行这个时,我希望得到“0,1,2,3,4,5”,但除了“建立成功”之外别无他法。我在ubuntu linux上使用netbeans 8.0。任何帮助或解释为什么会受到赞赏。
编辑:*捂脸
答案 0 :(得分:6)
在Java for
循环中,如while
循环,您不指定“break”,而是指定“continue”条件。因此,您应该将==
替换为<=
。
答案 1 :(得分:2)
termination expression
i == 5
在您的案例中以for循环开始时为false。
这就是为什么它不会进入循环并打印任何东西。
来自Java Doc - http://docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html
When the termination expression evaluates to false, the loop terminates.
这个问题与java 8无关。这是一个基本问题。
答案 2 :(得分:2)
实际上它意味着你 如果i == 5,循环将继续,但最初你声明i = 0,因此条件为假,如果你想继续,则循环终止而不是i == 5你使用i&lt; 5或i&lt; = 5
for(int i=0;i<=5;i++){
System.out.println(i);
}
答案 3 :(得分:1)
尝试:
for(int i=0; i<=5; i++)
答案 4 :(得分:0)
你在“for”
中犯了一个错误i == 5
但是如果你想使用java 8 featurs并迭代整数列表,你可以这样做
List<Integer> numbers = Arrays.asList(1,2,3,4,5);
numbers.forEach( value -> System.out.println(value));
这样你就不会错在&lt; =或&lt;或==
答案 5 :(得分:0)
如果你想要与你的实现完全等效,那么它应该是:
public static void main(String[] args) {
for(int i=0;i!=5;i++){
System.out.println(i);
}
}
虽然我认为应该首选i <= 5
的标准方法。