Estou iniciando em Java na faculdade e estou tendo problema nessa parte de vetor. Quando vou exibir o vetor os valores ficam zero, no caso o vetor tem que guardar 3 valores int. O que pode ser?
public class ArrayValorPorTeclado {
public static void main(String[] args) {
int vet[] = new int[3]; ;// se coloco com 4 posições ele até finaliza mas exibe valores 0
Scanner entrada = new Scanner(System.in);
int i;
for (i = 0; i < 3; i++) {
System.out.print("Digite o valor:" + (i + 1) + ": ");
vet[i] = entrada.nextInt();
}
for (int z = 0; z < 3; z++) {
System.out.printf("Número %d -> Valor armazenado: %d\n", z + 1, vet[i]);
}
}
}
public class ArrayValorPorTeclado {
public static void main(String[] args) {
int vet[] = new int[3];
;// se coloco com 4 posições ele até finaliza mas exibe valores 0
Scanner entrada = new Scanner(System.in);
for (int i = 0; i < 3; i++) {
System.out.print("Digite o valor:" + (i + 1) + ": ");
vet[i] = entrada.nextInt();
}
for (int i = 0; i < 3; i++) {
int z = i + 1;
System.out.printf("Número %d -> Valor armazenado: %d\n", z, vet[i]);
}
entrada.close();
}
}
Evite usar valor fixado para o for, como o 3. Utilize o tamanho do vetor já que vai percorrer ele:
for (int i = 0; i < vet.length; i++) {
Desta forma quando o vetor for modificado para outra quantidade, não precisa sair alterando todo seu código.
O problema está no
System.out.printf(“Número %d -> Valor armazenado: %d\n”, z + 1, vet[i]);
Vc está percorrendo o “for” utilizando a variável “z”, mas no Vetor está a variável “i”, basta modificar para z, então ficará
System.out.printf(“Número %d -> Valor armazenado: %d\n”, z + 1, vet[z]);
Valeu pela dica, realmente fica muito melhor dessa forma.
Nossa nem consegui enxergar que era isso, fica difícil rs. Valeu.