Olá pessoal.
Quero saber se tem como eu ir aumentando meu vetor de acordo com o que o usuário digita.
No código que segue abaixo eu peço ao usuario digitar numeros aleatorios, e somo todos os numeros pares digitados.
Só que como vc’s podem ver, eu inicializo o vetor com 15 posições. Eu queria era que meu vetor fosse aumentando de tamanho até que o usuario digitasse ‘0’ e finalizasse o programa.
Desde de já, agradeço qualquer ajuda.
[code]package Exercicios;
import java.util.Scanner;
public class lista2_exer4 {
public static void main(String[] args) {
int num[]=new int[15], soma_pares=0, cont=1, i;
Scanner leia=new Scanner(System.in);
System.out.println("Digite os numeros. Digite '0' para finalizar.");
do{
for(i=0;i<cont;i++){
System.out.println("Digite o numero "+ i);
num[i]=leia.nextInt();
if (num[i]!=0){
cont++;
if (num[i]%2==0){
soma_pares+=num[i];
}
}
}
}while(num[i]!=0);
System.out.println("A soma dos numeros pares é igual a: "+ soma_pares);
System.out.println("Programa Finalizado!");
}
}
[/code]
Use collections… existe formas de se fazer na mão, mais é tolice ^^ …
Coleções: Como não usar Arrays
…
[code]List todos = new ArrayList(0); //cria uma arrayList de tamanho 0
//…
do {
System.out.println("Digite o "+ (todos.size()+1) + “° numero”);
int num = leia.nextInt();
todos.add(num);
if (num%2 == 0)
somaPares += num;
while(num != 0);
//…[/code]
Valeu.
Mas se eu quiser verificar se um numero qualquer está dentro dessa coleção.
E se eu quiser imprimir apenas um numero dessa coleção?
Como faço?
[quote=elizier]Valeu.
Mas como é q eu fasso para imprimir todos os numeros dessa coleção?
[/quote]
for (Integer numero: todos)
System.out.println(numero);
for (int i = 0; i < todos.size(); i++)
System.out.println(todos.get(i));
vc decide ^^ (o 1° método é melhor)
tem ainda o
System.out.println(Arrays.toString(todos.toArray()));
//a classe Arrays pertence a java.util, e pode ser usada pra imprimir qualquer array
if (todos.contains(4))
System.out.println("4 esta na coleção");
Só mais uma coisa. ^^
Eu tentei usar aqui o sort da biblioteca Arrays e deu erro…
Como faço para ordenar a minha coleção.
E para imprimir apenas um numero dessa coleção? Tipo, apontando a sua posição (como num Array).
Desculpa se estou sendo chato… :lol:
[quote=elizier]Só mais uma coisa. ^^
Eu tentei usar aqui o sort da biblioteca Arrays e deu erro…
Como faço para ordenar a minha coleção.
E para imprimir apenas um numero dessa coleção? Tipo, apontando a sua posição (como num Array).
Desculpa se estou sendo chato… :lol:
[/quote]
para 1 elemento especifico… so vc olhar esse trecho q tinha colocado
for (int i = 0; i < todos.size(); i++)
System.out.println(todos.get(i));
ou seja… todos.get(index);
…
para ordenar Collection vc usa Collections e não Arrays ^^
Collections.sort(todos);
Obrigado pela ajuda Lavieri.
Foi bastante esclarecedora.
[quote=elizier]Obrigado pela ajuda Lavieri.
Foi bastante esclarecedora.[/quote]
que nada … pra sua idade vc ta mandando bem ^^
huuhhu
Explicando a piada estou falando do avatar…