como devolver un arreglo (completo) para instanciar en otro en java ?

Temas sobre programación ( php, c, sql, html, perl, python, ruby, java, bash, etc ) y recursos ( herramientas, frameworks, hosting, cms, etc )

Moderadores: akodo, maiku

Responder
Avatar de Usuario
joms
Forista Menor
Forista Menor
Mensajes: 67
Registrado: Vie Jun 25, 2010 1:41 am
Ubicación: Durango,mexico

como devolver un arreglo (completo) para instanciar en otro en java ?

Mensaje por joms » Vie Nov 04, 2011 7:41 pm

bueno pues creo el titulo lo dice todo, tengo un programa que genera y lee matrices y la quiero usar en otro programa toda completa, pero solo logro que me devuelva una posición que yo especifico. Quisiera que alguien me corrija lo que tengo ya, o si me lo ponen en uno aparte mas corto pero que haga lo que quiero, pues ta bien también. Ya tengo rato intentándolo y no lo consigo ya busque en Google y solo me reburuja mas no les sale a unos y a otros no lo explican claramente.

Estoy usando netbeans por supuesto en Linux como no!

En otras parte he visto comentarios de (“que profesor te da clase no sabe enseñar)” o cosas así.
No digo que aquí en este foro, pero si cuando busque en vez de solo responder y ya es un poco molesto que le respondan a uno así.

No supe como poner el texto en verde, como lo ponen en verde para programas, a si que mejor lo comprimí y de hay me dicen, también lo de como se pone las letras en verde para programas.
Ya para saber ?
Adjuntos
Escritorio.tar
(10 KiB) Descargado 17 veces
Avatar de Usuario
akodo
Moderador
Moderador
Mensajes: 1457
Registrado: Mié Nov 28, 2007 8:00 am
Ubicación: En la X del explorer (pulse para llamar)

Re: como devolver un arreglo (completo) para instanciar en otro en java ?

Mensaje por akodo » Vie Nov 04, 2011 11:59 pm

Si vas a trabajar con matrices, lo primero que deberías hacer es crear una clase "matriz", que será la que uses

Código: Seleccionar todo

public class Matriz{
  private int[][] mat;
  public Matriz(int[][] values){
    mat = values;
  }
  public Matriz(){
    mat = new int[10][10];
  }
  public static Matriz readFrom(File f){
    //código para leer la matriz del fichero
  }
  //otras operaciones como suma, resta, etc
}
Esta clase es la que debes utilizar en otras partes del programa, y no los dobles arrays que estás utilizando.

Esta clase la puedes devolver en funciones, en vez de el int que estás devolviendo.

Siendo estrictos, la responsabilidad de crear y/o generar matrices le corresponde a la clase Matriz (salvo que haya alguna razón poderosa para que no sea así); lo mismo pasa con las operaciones de aritméticas sobre matrices. Con esto quiero decir que esas funciones deberían estar dentro de la clase Matriz y no en otro sitio.

PD: Por cuestiones de convención, los nombres de las clase en java empiezan por mayúscula, y los de las funciones y atributos con minúscula. Además, que el método principal (main) lance excepciones queda fatal
PD2: Para postear código, si es pequeño utiliza la etiqueta "code" (según editas el texto del post, en los botones de arriba), y si es largo utiliza servicios como pastebin (http://pastebin.com/)
Descargue el gestor de mp3 "Music Manager" -> ([url=http://ctrlalt.iespana.es]mmlf[/url])
Última versión del gestor "Music Manager" -> ([url=http://sourceforge.net/projects/jmusicmanager/]jmmm[/url])
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje