Fala ae galera, sou novo aki no forum e tb sou novo no java gostaria de tirar uma duvida cruel.
como q eu faço pra capturar um dado do teclado e guardar numa variavel?
na linguagem c eu sei q eh assim:scanf("%tipodavariavel",&variavel).
E em java como eu fço isso?
Desde ja muito obrigado ae galera
Nesse caso ele vai guardar oq o usario digitou na variavel “s”?
se for ,brigadao velho!!!
G
guialeixo
brunomp57:
Nesse caso ele vai guardar oq o usario digitou na variavel “s”?
se for ,brigadao velho!!!
sim
B
brunomp57
Vlw rapaze ,vou testar quando chegar em casa!!
gabrielmskate
Eu faria assim…
importjava.util.Scanner;publicclassTeste{publicstaticvoidmain(Stringargs[]){Scannersc=newScanner(System.in);Stringnome;intidade;System.out.println("Digite seu nome");nome=sc.nextLine();System.out.println("Digite sua idade");idade=sc.nextInt();System.out.println(nome+"\n"+idade);}}
gabrielmskate
Qual a diferença dos dois métodos (Scanner ou Console)??
B
Bruno_Laturner
Scanner é uma classe que serve para processamento em linha de InputStreams.
Console é uma classe específica para leitura de entradas via console/prompt de comandos, até facilita escrever algo como "Digite o teu nome aqui: " seguido da entrada. Outro extra é a leitura de senhas, já camufladas.
Para mim o maior ganho é não cair na besteira de ficar usando o Scanner.nextInt(), que não foi feito para ser usado com o System.in.
edmarr
Bruno Laturner:
Scanner é uma classe que serve para processamento em linha de InputStreams.
Console é uma classe específica para leitura de entradas via console/prompt de comandos, até facilita escrever algo como "Digite o teu nome aqui: " seguido da entrada. Outro extra é a leitura de senhas, já camufladas.
Para mim o maior ganho é não cair na besteira de ficar usando o Scanner.nextInt(), que não foi feito para ser usado com o System.in.
Concordo com vc !
Thiago_MuiLoko
Desculpe, não entendi isso…
O que vcs querem dizer “com não foi feito para ser usado com o System.in”?
B
Bruno_Laturner
Thiago MuiLoko:
Desculpe, não entendi isso…
O que vcs querem dizer “com não foi feito para ser usado com o System.in”?
As entradas do nextInt vazam para o próximo nextLine
B
Bruno_Laturner
Explicando, o nextInt lê a entrada a procura de números inteiros, e ele para quando lê um outro caracter.
O nextLine lê a entrada até encontrar uma terminação de linha. No Windows a terminação de linha é feira com carriage return, line feed, em java “\r\n”.
O nextInt vai ler os números e ler o \r e o \n vai sobrar. O \n também é considerado um caracter de terminação de linha (é usado em sistemas unix), e o nextLine vai comer ele.
Ai a entrada vai parar no próximo nextInt.
O método de fazer o nextInt funcionar corretamente com o System.in é usar somente o nextLine, pegar a String e convertê-la para int com Integer.parseInt;
Thiago_MuiLoko
Hummmmmmmm… tendi…
Vlw!
gabrielmskate
Bruno Laturner:
Scanner é uma classe que serve para processamento em linha de InputStreams.
Console é uma classe específica para leitura de entradas via console/prompt de comandos, até facilita escrever algo como "Digite o teu nome aqui: " seguido da entrada. Outro extra é a leitura de senhas, já camufladas.
Para mim o maior ganho é não cair na besteira de ficar usando o Scanner.nextInt(), que não foi feito para ser usado com o System.in.
Bruno Laturner:
Explicando, o nextInt lê a entrada a procura de números inteiros, e ele para quando lê um outro caracter.
O nextLine lê a entrada até encontrar uma terminação de linha. No Windows a terminação de linha é feira com carriage return, line feed, em java “\r\n”.
O nextInt vai ler os números e ler o \r e o \n vai sobrar. O \n também é considerado um caracter de terminação de linha (é usado em sistemas unix), e o nextLine vai comer ele.
Ai a entrada vai parar no próximo nextInt.
O método de fazer o nextInt funcionar corretamente com o System.in é usar somente o nextLine, pegar a String e convertê-la para int com Integer.parseInt;
Cara, valeu pela aula…
Eu sempre usava Scanner.
B
Bruno_Laturner
E testando o código de novo aqui em casa encontrei um bug, ou algo parecido.
Console não funciona no Netbeans e outras IDEs, pois elas não tem console. Scanner funciona.
De volta à prancha de projetos.
gabrielmskate
É esse código aqui não Funcionou no Eclipse nem no NotePad++. Mas no prompt ele roda...
publicclassTesteConsole{publicstaticvoidmain(Stringargs[]){Consolecs=System.console();Stringnome;intidade;System.out.println("Digite seu nome");nome=cs.readLine();System.out.println("Digite sua idade");idade=Integer.parseInt(cs.readLine());System.out.println(nome+"\n"+idade);}}
Ontem eu fiquei tentando mudar o exemplo de Scanner para Console no Eclipse, e realmente não funciona...
Agora que eu voltei pro prompt ele ta rodando...