2012-11-07 133 views
1

我最近使用Java开始了,我要开始一个大的项目,但我发现在我的代码奇怪的问题,看起来像这样:代码不断跳过输入步骤

import java.util.Scanner; 
public class Sifre { 

    public static void main(String[] args) { 
     Scanner unos = new Scanner(System.in); 
     System.out.println("Unesite broj sifara:"); 
     int bsif = unos.nextInt(); 
     String sifre[] = new String [bsif]; 
     String imena[] = new String [bsif]; 
     int i,z; 
     for (i = 0;i<bsif;i++) 
     { 
      System.out.println("Unesite sifru broj " + (i+1)); 
      sifre[i] = unos.nextLine(); 
     } 
     for (z=0;z<bsif;z++) 
     { 
      System.out.println(sifre[z]); 
     } 
    } 

} 

我每次运行代码,它跳过第一个输入步骤,并继续正常工作,即使计数器以大于0开始。这里是输出,告诉我什么是错误的(我知道代码不完美,但它是我第一次在3

> Unesite broj sifara: 

>>3 

>Unesite sifru broj 1 

>Unesite sifru broj 2 
>>first 

>Unesite sifru broj 3 
>>second 
> 
>first 
> 
>second 
+0

在循环之前和此语句之后添加'unos.nextLine();'int bsif = unos.nextInt();'。 – Lion

+0

你只会在SO上发现很多关于这个问题的问题,把Google放在一边。 –

+0

我知道这是一个普遍的问题,但我很难说出我的答案在搜索引擎中获得任何结果 – Fokezy

回答

0

Add input.nextLine()后的Java个月)

int bsif = unos.nextInt();