Por que esse loop não me permite inserir texto no primeiro ciclo?
O que eu quero fazer é pedir ao usuário por um número de seqüências de caracteres para ler em uma matriz e, em seguida, pedir ao usuário para inserir esse número de seqüências de caracteres e lê-las na matriz. Quando eu executo este código, ele nunca me pede uma entrada no primeiro ciclo do primeiro loop for, apenas imprime "String # 0: String # 1:" e então eu posso inserir texto. Por que isso e o que eu fiz de errado?
import java.util.Scanner;
public class ovn9
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.print("Number of inputs: ");
int lines= sc.nextInt();
String[] text=new String[lines];
for(int x=0; x<text.length; x++)
{
System.out.print("String #"+x+": ");
text[x] = sc.nextLine();
}
for(int y=0; y<text.length; y++)
System.out.println(text[y]);
}
}