Foros del Web » Programación para mayores de 30 ;) » Java »

arreglos

Estas en el tema de arreglos en el foro de Java en Foros del Web. Hola a todos... como defino un arreglo que su contenido es variable?? es decir por ejemplo tengo esto datos[0] = "info 1"; datos[1] = "info ...
  #1 (permalink)  
Antiguo 04/02/2005, 14:42
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
arreglos

Hola a todos...
como defino un arreglo que su contenido es variable??
es decir por ejemplo tengo esto

datos[0] = "info 1";
datos[1] = "info 2";
datos[2] = "info 3";
datos[3] = "info 4";

por ejemplo ahora tengo 4 elementos pero es variables, es decir se va llenando segun condiciones
ejemplo
if (a.equals("1")){
datos[i] = "info 1";
i= i + ;
}
if (b.equals("1")){
datos[i] = "info 2";
i= i + ;
}

y asi sucesivamente!! porfis...

ademas como puedo saber si el arreglo tiene datos.. algo asi como en otros lenguajes count(arreglo) > 0
y por ultimo como recorro el arreglo

Agradecere sus ayudas para un novato en este lenguaje!!
Mis saludos..
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #2 (permalink)  
Antiguo 05/02/2005, 20:47
 
Fecha de Ingreso: noviembre-2004
Ubicación: Oviedo
Mensajes: 99
Antigüedad: 19 años, 5 meses
Puntos: 1
Hombre, si inicializas los 4 elementos de datos a algo, pues ya sabes que datos[0] o datos[1] o datos[2] o datos[3] van a contener algo.
Si no, puedes utilizar el siguiente codigo:
Código PHP:
if(datos != null && datos[elemento].length 0)
{
     
//entonces es que datos segun el elemento contiene algo

  #3 (permalink)  
Antiguo 07/02/2005, 06:42
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
ok te entiendo...
pero he visto que debo declarar todas las variables en jsp,
como declaro una variable que es un array?

ademas si no tengo la cantidad de elementos como la declaro?
...eso es por una parte...
y ahora como la recorro si nose la cantidad de elementos que tiene mi arreglo?
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #4 (permalink)  
Antiguo 07/02/2005, 06:51
 
Fecha de Ingreso: enero-2005
Mensajes: 139
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola,

Para instanciar un array:

int miarray[];

Para inicializarlo

miarray = new int[tu_dimensión]; // La dimensión puede ser una variable.

Para recorrerlo

for(int i=0;i<miarray.length;i++)
System.out.println(miarray[i]);

Espero que te sirva.

Saludos.
  #5 (permalink)  
Antiguo 07/02/2005, 07:24
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
ok entendi...
pero sacame de una duda.. pq encontre esto en la web de la definicion de array
String[] qu2 = new String[]{"","","","",""};

donde lo q esta en {} seria la cantidad de elementos, algo asi como el indice!
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #6 (permalink)  
Antiguo 07/02/2005, 07:45
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
pq no puedo con los arreglos... estoy definiendo tal cual me han dicho y me marca error...
ejemplo
Código PHP:
int where[];
where[] = 1;
//o esto !
where[0] = 1
tan solo coloque eso y me marca error!!
Ha tenido lugar un error en la línea: 5 en el archivo jsp: /seguros.jsp
Error de servlet generado:
c:\user1\.netbeans\4.0\jakarta-tomcat-5.0.28_base\work\Catalina\localhost\example\org\ap ache\jsp\example_jsp.java:123: variable where might not have been initialized
where[0] = 1;
^
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #7 (permalink)  
Antiguo 07/02/2005, 08:43
 
Fecha de Ingreso: enero-2005
Mensajes: 139
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola,

Yo creo que la inicialización no es del todo correcta.

Se te ha olvidado hacer el new que te puse antes de manejar el array. Si no inicializas el array no podrás asignar valores a sus elementos.

Saludos.
  #8 (permalink)  
Antiguo 07/02/2005, 08:50
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
pero tu me dices esto
miarray = new int[tu_dimensión]; // La dimensión puede ser una variable.

y si yo nose cuantos elementos pueden conformar mi arreglo (ya q lo q pones como TU_DIMENSION corresponderia a la cantidad de elementos)?

por eso puse el ejemplo
if (a.equals("1")){
datos[i] = "info 1";
i= i + ;
}
if (b.equals("1")){
datos[i] = "info 2";
i= i + ;
}
si se cumple la condicion 1 y la condicion 2 NO se cumple entonces tendria un solo elemento en el arreglo, pero tambien puede darse el caso que sean 2
a lo q voy que en ocasiones no sabre cuantos elementos corresponderan en un arreglo, por ejemplo en PHP, yo no defino un arreglo... y yo puedo ir asignandole cosas y este crece sin limitarme en cantidad,
ejemplo:
$arreglo[] = 1;
$arreglo[] = 2;
$arreglo[] = 3;
$arreglo[n] = n;
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #9 (permalink)  
Antiguo 08/02/2005, 02:43
 
Fecha de Ingreso: enero-2005
Mensajes: 139
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola,

Pues desconozco si Java tiene arrays dinámicos que se puedan redimensionar. En cualquier caso, siempre te puedes crear un array con espacio suficiente para almacenar todo lo que necesitas, y una vez que conozcas las dimensiones, copiar sólo lo que necesites a un nuevo array que crees con los tamaños correctos.

Es una posible solución que se me ocurre de forma rápida de las muchas que puede haber...

Saludos.
  #10 (permalink)  
Antiguo 08/02/2005, 03:11
 
Fecha de Ingreso: julio-2004
Ubicación: Madrid
Mensajes: 40
Antigüedad: 19 años, 9 meses
Puntos: 0
Si quieres usar array dinamicos en JAVA.

- Es la clase vector y luego pasarlo a un array es decir.

Vector variable = new Vector();
variable.add((Tipo de datos) dato);
...
// Una vez que has terminado el tratamiento lo conviertes en un array de la siguiente manera.

String miarray[] = variable.toArray(New String[0]); Con esto lo que tengas en el vector te lo pasa automatica a una variable de tipo array con la dimension necesaria.

La idea es que el vector te deja meter todos los elementos que quieras y del tipo de datos que te de la gan y luego esta función te devuelve un array que estatico con todo.

Si algo no te funciona por que lo he puesde de memoria te aconsejo que lo mires en el API de java por que uno de los procedimientos es esto.

Resumen:
- Vector guardo todos los datos dinamicos.
- y cuando lo necesito o preciso se lo paso a un array estatico definido de la manera myarray[].
  #11 (permalink)  
Antiguo 08/02/2005, 03:14
 
Fecha de Ingreso: julio-2004
Ubicación: Madrid
Mensajes: 40
Antigüedad: 19 años, 9 meses
Puntos: 0
Ojo: donde pongo (tipo de datos). Me he confundido es la clase es decir (String) se lo
traga por que es una clase, pero int no (Pero en este caso puedes currar con la clase Integer etc....).

Son las cosas que tiene java.
  #12 (permalink)  
Antiguo 08/02/2005, 12:11
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
OK... entendido lo usare...
ademas analizare lo que dicen...
por ultimo no existe algun buen manual de jsp? o una buena pagina?
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:43.