Scanner.nextInt() reads the input as long as it is reading a number. And then stops reading any longer. This means, it will not read the end of line characters.
The next time your call Scanner.nextLine() (to read the name), it detects that the input stream has content (after the number, which had been just read before) and it returns this data. It wouldn't even ask the user to start entering input.
The idea here is not to try to parse the input stream for an int, but rather read everything the user entered and store it in a String. After that, parse the number from this line entered by the user:
idade[i] = Integer.parseInt(ler.nextLine());
I'm not a Java programmer. There may be other solutions for the problem.