Como colocar valores num tipo primitivo? [RESOLVIDO]

15 respostas
duke_nukem

Aí galera. Eu nao sei como eu insiro um valor em uma variavel primitiva.
O que eu to tentando fazer equivale ao pascal

var nome : string;

begin
write('Insira seu nome: ')
readln(nome);

writeln('Bem vindo', nome, '!')

end

Agrdeço a quem me ajudar.

15 Respostas

pablosaraiva
static String nome;
public static void main(String args[]) {
		Scanner s = new Scanner(System.in);

		System.out.println("Insira seu nome: ");
		nome = s.nextLine();
		System.out.println("Bem vindo " + nome + "!");
}
E

Procure aqui no fórum sobre “java.util.Scanner”.

R
pablosaraiva:
static String nome;
public static void main(String args[]) {
		Scanner s = new Scanner(System.in);

		System.out.println("Insira seu nome: ");
		nome = s.nextLine();
		System.out.println("Bem vindo " + nome + "!");
}

String n eh um tipo primitivo, entao estas errado...

R

vc declarou dessa forma
static String nome;

entendeu?

pablosaraiva

O código em pascal não é OO. Enquanto em pascal String é um tipo primitivo, em Java não é.

Para usar char, o código ficaria muito mais complexo e não seria um código equivalente, obviamente.

pablosaraiva

Além disso, declarei String como static, fora do método main, também para fazer o código equivalente.

No código em Pascal que ele escreveu, nome é uma variável global.

duke_nukem

Cara, é por isso que eu amo esse forum

nel
Se é por isso, apenas mudemos o nome da variavél e o seu tipo.
static int idade;   
public static void main(String args[]) {   
        Scanner s = new Scanner(System.in);   
  
        System.out.println("Insira sua idade: ");   
        idade = s.nextInt(); 
        System.out.println("Bem vindo. Sua idade é:  " + idade + "!");   
}

Certo?

Abraços.

Fernando_Generoso_da

esse trecho daria problema:

idade = s.nextLine();

o método nextLine() retorna uma String e não um int.

teria que ser:

idade = s.nextInt();
nel

Perfeito, apenas esqueci de alterar esta linha.

Obrigado.

Edit: Fiz a correção no código.

duke_nukem

Aproveitando a ocasião. Queria saber qual a nomenclatura que se dá a esse processo.

nel

Desculpe, não compreendi a sua pergunta.

O que se refere a nomenclatura deste processo? O fato de se atribuir um valor a uma variavél primitiva?
Abraços.

duke_nukem

quero dizer…
o que extamente eu faço. Eu chamo a classw Scanner ou estancio a String, ou coisa assim.
nao sei se vcs entenderam, mas nem eu sei como explicar direito.

M
static int idade; // declara a variável inteira idade
public static void main(String args[]) {   
        Scanner s = new Scanner(System.in); // instancia um objeto do tipo Scanner
        // que lê de System.in (entrada padrão de dados)
  
        System.out.println("Insira sua idade: "); // imprime a frase na saída padrão
        idade = s.nextInt(); // chama o método nextInt() de Scanner que lê o primeiro número inteiro digitado
        System.out.println("Bem vindo. Sua idade é:  " + idade + "!"); // imprime na saída padrão
}
duke_nukem

Eu achei que voce fazia da variavel uma referencia do objeto Scanner.

Criado 15 de dezembro de 2009
Ultima resposta 22 de dez. de 2009
Respostas 15
Participantes 7