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

colocar en variable

Estas en el tema de colocar en variable en el foro de Java en Foros del Web. aqui esta mi codigo, lo que quiero es que cada numero me quede en una variable Código: public static void leer_archivo() throws IOException { String ...
  #1 (permalink)  
Antiguo 22/06/2015, 15:28
 
Fecha de Ingreso: diciembre-2010
Mensajes: 162
Antigüedad: 13 años, 4 meses
Puntos: 1
Exclamación colocar en variable

aqui esta mi codigo, lo que quiero es que cada numero me quede en una variable

Código:
public static void leer_archivo() throws IOException
    {
        String nombre_fichero="AUTO.obj";
        BufferedReader br=null;
        try{
            br=new BufferedReader(new FileReader(nombre_fichero));
            String texto = null;
            
            
            
            
                while((texto = br.readLine())!=null){
                    if(texto.startsWith("#")){
                        continue;
                        
                    }
                    if(texto.startsWith("m")){
                        continue;
                    }
                    if(texto.startsWith("v")){
                        
                        String numeros[];
                        numeros = texto.split(" ");
                        
                        System.out.println(Arrays.toString(numeros));
                        
                    }
                    
                    
                    
                    
                }
            }
        catch(FileNotFoundException e){
               System.out.print(e.getMessage());
            }    
        
    }

    /**
     *
     * @param args
     */
    public static void main(String[] args){
        try {
            leer_archivo();
        } catch (IOException ex) {
            Logger.getLogger(Leer.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
el resultado es este

[v, , 3.2810, -5.6424, 9.2452]
[v, , -0.0000, -5.6424, 9.2452]
[v, , 0.0000, -5.6424, 6.9339]
[v, , 3.2810, -5.6424, 6.9339] etc

quiero tomar cada numero que me lo muestra separado con coma y ponerlo en una variable
  #2 (permalink)  
Antiguo 23/06/2015, 00:35
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: colocar en variable

Buenas,

Para almacenar una tabla como la que propones necesitas una estructura bidimensional.

Puedes hacerla con arrays estaticos:
String [][] tablaNumeros;

O bien utilizar listas dinamicas:
List<List<String>> tablaNumeros;

Una lista de mapas donde puede incluir informacion sobre las columnas:
List<Map<String, String>> tablaNumeros;

O un hibrido como:
List<String[]> tablaNumeros;

Tu eliges.

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 23/06/2015, 06:10
 
Fecha de Ingreso: diciembre-2010
Mensajes: 162
Antigüedad: 13 años, 4 meses
Puntos: 1
Exclamación Respuesta: colocar en variable

muchas gracias por la respuesta tendre que leer sobre listas ya que vengo de c# y no conozco bien java aun, pero ya me has dado una idea
  #4 (permalink)  
Antiguo 23/06/2015, 06:30
 
Fecha de Ingreso: diciembre-2010
Mensajes: 162
Antigüedad: 13 años, 4 meses
Puntos: 1
Respuesta: colocar en variable

podrian darme un ejemplo de como utilizar los arrays?? que busque en google y no lo comprendi
  #5 (permalink)  
Antiguo 23/06/2015, 08:15
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: colocar en variable

Buenas,

No entiendo. Los arrays en Java se manejan exactamente igual que en C#.
http://www.tutorialspoint.com/csharp/csharp_arrays.htm
https://docs.oracle.com/javase/tutor...ts/arrays.html

Cual es la duda concreta que tienes? Como estas intentando hacerlo?


Un saludo
__________________
If to err is human, then programmers are the most human of us
  #6 (permalink)  
Antiguo 23/06/2015, 13:12
Avatar de Tipdar  
Fecha de Ingreso: octubre-2005
Ubicación: Aquí y allá.
Mensajes: 323
Antigüedad: 18 años, 6 meses
Puntos: 7
Respuesta: colocar en variable

Estimado señor Poeta,
Los arreglos soportan en una sola variable un número determinado de datos. En otras palabras, suponga que desea almacenar en memoria diez valores numéricos... ¿declararía diez variables? Ahí tiene su respuesta: un arreglo haría el trabajo.

int[] arreglo = new int[10];

for (int i = 0; i < 10; i++)
arreglo[i] = i;

Los arreglos siempre comienzan en 0, es decir, para 10 elementos recorrer el arreglo iría desde 0 hasta 9. Siempre te refieres a la posición como arreglo[X] donde X sería un entero entre 0 (incluído) y el tamaño del arreglo (excluído).

Algo así:

X X X X X X X X X X
0 1 2 3 4 5 6 7 8 9

Tiene usted, oh ilustre y muy estimado señor Poeta, además la posibilidad de tener arreglos multidimensionales, por ejemplo, un arreglo de dos dimensiones representaría una matriz.

int[][] matriz = new int[5][5];

Eso sería algo como esto:

X X X X X
X X X X X
X X X X X
X X X X X
X X X X X

Donde cada X es un valor entero. Igual comienzan en [0][0] y debe referirse a la posición del arreglo cómo: matriz[4][4].

Puede tener arreglos como arreglo[3][10] y todos los que se te ocurran, pero no le veo uso práctico a un arreglo de más de dos dimensiones.

Espero pueda haber contribuído en algo mi humilde post.
__________________
El último TipdaR
  #7 (permalink)  
Antiguo 23/06/2015, 15:38
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 12 años, 1 mes
Puntos: 31
Respuesta: colocar en variable

Prueba esto:
Código:
public static void main(String[] args) {
	String[][] matriz = new String[5][5];
	for (int i=0;i<=4;i++)
		for (int j=0;j<=4;j++)
			matriz[i][j]=Integer.toString(i)+Integer.toString(j);
	for (int i=0;i<=4;i++){
		for (int j=0;j<=4;j++)System.out.print(matriz[i][j]+" ");
		System.out.println();
	}
}

Etiquetas: string, variable
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 13:31.