Ir ao conteúdo

Problemas de iniciante


MHK

Posts recomendados

Postado

Olá gente, estou começando no JAVA agora e não estou conseguindo fazer algumas coisas:

1 - Ler do teclado (console);

2 - Mudar nomes de objetos;

3 - Mudar texto de Campo de Texto;

Uso o NetBeans 6.7.

A segunda dúvida na verdade é um problema meio estranho. Eu mudo a propriedade 'name' mas quando crio algum evento pro objeto ele cria com o nome padrão dele. Além disso, se eu quiser usar o nome que eu criei ele dá erro, tipo:

nomequecriei.text

A terceira refere-se ao fato de que quando crio um campo de texto não consigo mudar, num evento dele qualquer, a propriedade text. Quando digito '.' ele simplesmente não aparece a propriedade 'text'.

Já tenho experiências com C#, mas não sei quais as causas desses problemas. Alguém pode me ajudar?:huh:

Postado
1 - Ler do teclado (console);

Uma maneira óbvia de pensar seria assim: "se System.out é de saída, então System.in é de entrada".

System.in.read();

E isso é verdade, porém System.in é um objeto da classe InputStream e portanto lê as teclas pressionadas em forma de bytes, o que pode não ser o que você deseja.

Para resolver isso, costumava-se utilizar uma combinação com objetos das classes InputStreamReader (que lê caracteres) e BufferedReader (que lê linhas inteiras, na forma de String):


InputStreamReader inputReader = new InputStreamReader(System.in);
BufferedReader bufferReader = new BufferedReader(inputReader);

String string = bufferReader.readLine(); // lê a linha digitada
char caractere = (char) bufferReader.read(); // lê um caractere digitado
int inteiro = Integer.parseInt(bufferReader.readLine()); // converte o que for digitado em int
boolean booleano = Boolean.parseBoolean(bufferReader.readLine()); // converte o que for digitado em boolean
...

Porém, no JSE 5.0 foi criada a classe Scanner que, entre outras utilidades, pode facilitar isso tudo:


Scanner entrada = new Scanner(System.in);

String string = entrada.nextLine(); // lê uma linha
int inteiro = entrada.nextInt(); // lê um inteiro
boolean booleano = entrada.nextBoolean(); // lê um boolean
...

Portanto, a resposta é a classe Scanner. :D

2 - Mudar nomes de objetos;

Teria como ser mais claro sobre sua dúvida?

3 - Mudar texto de Campo de Texto;

A classe JTextField herda o método setText, que todo componente de texto possui. Basta você invocá-lo dentro do ouvinte de evento que você criar.

JTextField meuCampo = new JTextField();
meuCampo.setText("Alguma coisa");

Postado

Obrigado amigo!

Quanto a dúvida número 2, o que quero dizer é que tentei mudar o nome de um campo de texto no NetBeans. Aparentemente ele mudou, mas, quando, em um método qualquer eu tento usar este objeto com o novo nome ele não aceita, exigindo o antigo [o padrão que o NetBeans dá]. Mas lá na palheta de propriedades o nome que dei permanece.:huh:

Quanto à leitura, problema resolvido. Grato.

Só para constar para outros que tenham esta dúvida:

A classe Scanner está no pacote java.util. Então, use:

Para importar só a classe Scanner:

import java.util.Scanner;

Para importar a Scanner e todas as outras:

import java.util.*;

Abraços!

Postado

Quanto a dúvida número 2, o que quero dizer é que tentei mudar o nome de um campo de texto no NetBeans. Aparentemente ele mudou, mas, quando, em um método qualquer eu tento usar este objeto com o novo nome ele não aceita, exigindo o antigo [o padrão que o NetBeans dá]. Mas lá na palheta de propriedades o nome que dei permanece.:huh:

Ah sim, você diz mudar o nome da variável? Se for isso, basta você (no modo Projeto) clicar com o direito sobre o campo ou qualquer outro componente que desejar e clicar em "Alterar o nome da variável".

Depois, ele automaticamente muda o nome dela em todo o código que foi gerado por ele (ou seja, caso você tenha o nome antigo no seu código, será preciso alterar manualmente - um CTRL+H talvez resolva). ;)

Aí é só compilar a classe novamente (normalmente isso é feito automaticamente sempre que ela é salva).

Abraço.

  • 3 semanas depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!