Problemas com: while / scanner / array (vetor)

3 respostas
W

e ai galera esse é meu primeiro post aqui, eu dei uma procurada mas nao encontrei algo que resolve-se meu problema, tenho que criar um vetor que armazene valores até receber 0(zero), e os valores tem que serem lidos do teclado por Scanner… alguem tem ideia do que posso fazer? pelo que vi é melhor usar um while nesse caso, mas nao sei como…se alguem poder me ajudar. abraço

import java.util.Scanner;

public class tarefa {
	
	public static void main(String[] args) {
		int array;   
			
		
		while( ){
			
		Scanner digitado = new Scanner (System.in);
			System.out.println("digite um novo valor:");
				String idade = digitado.nextLine();
		}	
	}
}

3 Respostas

rafaduka
import java.util.Scanner;

public class Vetores {
	
	static int val = 1;
	
	public static void main(String[] args) {  
		while(hasZero()){  
			Scanner digitado = new Scanner (System.in);  
			System.out.println("digite um novo valor:");  
			String idade = digitado.nextLine();  
			val = Integer.parseInt(idade);
			//armazena no vetor
		}
		System.out.println("Número zero digitado");
	}
	
	static boolean hasZero() {
		return val == 0 ? false : true;
	}
}
W

rafaduka obrigado pela atenção pelo que você fez ali ficou muito bom,

dá uma olhada eu mudei um pouco o meu, e queria saber se pelo que eu to fazendo ali
Teria uma forma de adicionar os valores que eu digito para dentro do meu vetor
aqui no que eu fiz, ele já ta fazendo o teste certo, que é parar de aumentar o vetor quando a pessoa digitar um 0, mas ele não armazena os números no vetor, porque depois vou precisar ver os números que estão no vetor para fazer uns cálculos com eles…

import java.util.Scanner;

public class tarefa {
	
	public static void main(String[] args) {
		int[] array;   
			
		int b;
				
		do{
			Scanner digitar = new Scanner (System.in);
			System.out.println("digite um novo valor:");
			int valor = digitar.nextInt();
            array = Integer.parseInt(valor);  

			b= valor;
		}while(b != 0);
		
	}
}

muito obrigado pela ajuda ae

rafaduka
Ele não está armazenando no vetor, pq vc não definiu o tamanho dele. exemplo:
int vetor[] = new int[10];
como, vc não sabe o tamanho do vetor, aconselho utilizar List.
import java.util.Scanner;  
  
public class tarefa {  
      
    public static void main(String[] args) {                
        int b;  
        List<Integer> list = new ArrayList<Integer>();
                  
        do{  
            Scanner digitar = new Scanner (System.in);  
            System.out.println("digite um novo valor:");  
            int valor = digitar.nextInt();  
            list.add(valor);
            b= valor;  
        }while(b != 0);  
          
        //Lista todos os elementos da lista
        for (Integer valores : list) {
             System.out.println(valores);
        }

       //Se quiser capturar o indice
       int value = list.get(<indice>); 


    }  
}
Criado 22 de abril de 2012
Ultima resposta 22 de abr. de 2012
Respostas 3
Participantes 2