为什么没有印刷而只是终止?

时间:2014-02-28 18:54:32

标签: java input java.util.scanner

import java.util.Scanner;

public class Foothill {

  static Scanner input;

  public static void main(String[] args) {

    input = new Scanner (System.in);

    String[] getNames = new String[5];

    for(int x = 0; x > 5; x++){

        System.out.println("Enter 5 names: ");
        getNames[x] = input.nextLine();

        System.out.print(getNames[x]);          
    }

  }    
}

它终止了。有没有理由不要求5个名字,然后打印数组的元素?

4 个答案:

答案 0 :(得分:3)

更改

for(int x = 0; x > 5; x++){
               ^^^^^
                 |
                  -> this will never be true

for(int x = 0; x < 5; x++){

建议:如果正确跟踪代码(例如添加一些断点),则可以轻松找到此类错误。

答案 1 :(得分:2)

您的for循环语法不正确,

for(int x = 0; x > 5; x++){ // 0 is less then 5.

我想你想要,

for(int x = 0; x < 5; x++){ // while x is less then 5 (for five elements)

答案 2 :(得分:2)

需要

for(int x = 0; x < 5; x++){

X永远不会超过五个。

答案 3 :(得分:0)

    for(int x = 0; x < 5; x++){

        System.out.println("Enter 5 names: ");
        getNames[x] = input.nextLine();

        System.out.print(getNames[x]);          
    }

我更改了for循环中的符号:x&gt; 5,至x&lt; 5因为我确定你希望for循环通过x&lt; 5。