Scanf e gets em java

4 respostas
D

qual o comando equivalente ao scanf e gets do c em java 1.4.2 para capturar entradas do usuario
e qual os seus parametros

deltanusigma

4 Respostas

smkk

cara…

System.in.read()System.in.readln();

só não sei qual é qual… e se fazem a mesma coisa… porque não lembro muito de C

Andre_Brito

gets eu acho que usa o método nextLine() da classe Scanner.
scanf, eu acho que depende do tipo que você tá usando. Eu comecei a usar Integer.parseInt(reader.nextLine()) por problemas que tive no Java equivalentes ao C. De ler coisas que ainda ficam no buffer e coisarada.

smkk

tipo… precisa usar a classe Scanner para ler a entrada do usuário? não pode ser direto no InputStream System.in? é que fiz app console com Java muito pouco hehe… no que eles diferem do gets e scanf?

gibaholms

Entao cara… se fosse o JDK 5.0, vc poderia utilizar a classe Scanner… se fosse o 6.0, poderia utilizar a classe Console…

Mas como é o 1.4, vc é obrigado a utilizar o IO na unha:

// 1. Create an InputStreamReader using the standard input stream.
    InputStreamReader isr = new InputStreamReader( System.in );

    // 2. Create a BufferedReader using the InputStreamReader created.
    BufferedReader stdin = new BufferedReader( isr );

    // 3. Don't forget to prompt the user
    System.out.print( "Type some data for the program: " );

    // 4. Use the BufferedReader to read a line of text from the user.
    String input = stdin.readLine();

    // 5. Now, you can do anything with the input string that you need to.
    // Like, output it to the user.
    System.out.println( "input = " + input );
Criado 13 de janeiro de 2008
Ultima resposta 14 de jan. de 2008
Respostas 4
Participantes 4