我无法获得一个基本的for循环来工作java 8

时间:2014-06-23 12:51:26

标签: java

我正在测试循环,当我尝试这个时它不起作用:

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。任何帮助或解释为什么会受到赞赏。

编辑:*捂脸

6 个答案:

答案 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的标准方法。