Hola estaba tratando de ingresar datos a un arreglo per no los ingresa
Alquien me podria decir que estoy haciendo mal.
Error
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
import java.util.Scanner;
class Arreglos
{
Scanner tecla = new Scanner(System.in);
int Tam;
int Datos[] = new int[Tam];
void tamaArr()
{
System.out.println("Ingrese el tama~no de la lista: ");
Tam = tecla.nextInt();
for (int i = 0; i <= Tam-1; i++)
{
System.out.println("Ingrese los datos en el arreglo: ");
Datos[Tam] = tecla.nextInt();
}
}
}
public class lista {
public static void main(String[] args)
{
Arreglos ArreglosOb = new Arreglos();
ArreglosOb.tamaArr();
}
}
segun leei es como si estubiera fuera de indice
Estas declarando el array así
int Tam;
int Datos[] = new int[Tam];
Tam no tiene valor, así que por defecto es 0 y estás declarando un array de tamaño cero. Si luego pides por teclado Tam y te lias a pedir valores para el array, te saldrá fuera de rango.
Haz el new int[Tam] después de pedir por teclado la variable Tam.
Se bueno.
Si tienes razon era eso
import java.util.Scanner;
class Arreglos
{
Scanner tecla = new Scanner(System.in);
int Tam;
void tamaArr()
{
System.out.println("Ingrese el tama~no de la lista: ");
Tam = tecla.nextInt();
int Datos[] = new int[Tam];
for (int i = 0; i <= Tam-1; i++)
{
System.out.println("Ingrese los datos en el arreglo: ");
Datos[Tam] = tecla.nextInt();
}
}
}
Gracias saludos.