Autor
|
Tema: Dificultades en Java (Leído 3,066 veces)
|
Shakos
Desconectado
Mensajes: 12
|
Estoy haciendo un programa de bastante complicacion , al menos para mi nivel en Java el caso es que es como un periodico.Una breve explicacion de lo que debe pasar en el programa, el usuario puede añadir "trabajadores del periodico", los he guardado en un ArrayList hasta aqui todo bien , sigue de la siguiente manera, cada vez que el usuario escriba el nombre de uno de estos trabajadores se debe activar su columna si es que han publicado algo y mostrar el contenido, el principal problema es que hay un arraylist para las publicaciones pero claro solo puedo añadir publicaciones en general , es decir las publicaciones no estan en la columna de ningun trabajador especifico , me gustaria que cuando yo escribiera el nombre del trabajador y despues publicar, pudiera publicar en su columna , mientras que cuando escriba en la de otro trabajador poder escribir en la suya y finalmente mostrarlas segun los nombres de los trabajadores. Hasta ahora como ya he dicho solo he conseguido publicar en general, por asi decirlo me publico en mi propia columna pero no se como hacer lo que les he dicho.
|
|
|
En línea
|
|
|
|
zepheon
Desconectado
Mensajes: 30
|
Supongo que tendrás una clase Columna y una clase Publicacion, si es así, podrías hacer que uno de los atributos del trabajador sea un objeto de la clase Columna (su columna específica) y que uno de los atributos de Publicacion sea el trabajador que la ha escrito, de esta forma la vinculas con ese trabajador en concreto. Entonces, cuando busques a un trabajador por su nombre, miras su columna y si tiene alguna publicación la muestra. La idea es jugar con los atributos para poder decir "esta publicación pertenece a tal trabajador, a tal columna, o esta columna pertenece a tal trabajador, o el trabajador tiene tales publicaciones, y así poder relacionarlos fácilmente. Espero que te haya servido de algo aunque estemos hablando del problema a muy grandes rasgos y sin meternos en código. Si ves que no va por ahí la cosa o que habría que tener en cuenta algo sobre la implementación o algún fragmento de código para ayudarte mejor a resolver el problema, bienvenido sea Saludos!
|
|
|
En línea
|
Do or do not, there is no try.
Que la masa por la derivada de la velocidad respecto al tiempo te acompañe.
|
|
|
Shakos
Desconectado
Mensajes: 12
|
Haber, la cosa seria que crear un vector de publicaciones para cada trabajador y cada vez que le diera a publicar se activara un array u otro pero eso es imposible primero porque no se cuantos trabajadores se entraran desde el principio y despues que hacerlo seria una mostruosidad de codigo, bueno cuelgo lo que tengo puesto haber si ha alguien se le ocurre alguna forma. Publicacion mensaje = new Publicacion(); private int contador = 0; this.nombre = nombre; this.ciudad = ciudad; } public Persona(){ } return this.nombre; } return this.ciudad; } @Override String str = ("=============="+"\n"+this. nombre+"\n" + this. ciudad+"\n"); return str; } public void Publicar (String msg ){ long fecha = ClaseAuxiliar.getFechaActual(); Publicacion nueva = new Publicacion(fecha,msg); mensaje = nueva; publicaciones.add(mensaje); columna.add(publicaciones); } public void Columna(){ if(!columna.isEmpty()){ System. out. println(" columna "); for(Iterator it = publicaciones. iterator(); it. hasNext();){ Publicacion x = (Publicacion)it.next(); System. out. println(x. toString()); } } if(muros.isEmpty()){ System. out. println("\nNo hay publicaciones recientes"); } }
|
|
« Última modificación: 16 Abril 2011, 00:06 am por Debci »
|
En línea
|
|
|
|
zepheon
Desconectado
Mensajes: 30
|
Siento si no te respondí antes, es que he estado con exámenes y no he tenido tiempo ni para respirar xD Vi también que abriste otro post buscando alguien que te ayude sin mucha suerte, supongo que te urgirá hacer esto, así que intentaré ayudarte xD Bueno, para empezar, yo personalmente definiría Columna como una clase a parte e implementaría una LinkedList de columnas, dentro de las que habrá o no una publicación. Te dejo un ejemplo muy básico de como usar un HashMap aplicado a esto, que posiblemente te sirva para resolver tu problema. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.LinkedList; public class HashEjemplo { // Se definen dos personas de prueba Persona juanito = new Persona("Juanito", "Tokio"); Persona pepito = new Persona("Pepito", "Nueva York"); // Creas el HashMap, las keys seran sus nombres y los values sus // columnas hm.put(juanito.getNombre(), juanito.getColumnas()); hm.put(pepito.getNombre(), pepito.getColumnas()); System. out. println("Nombre del trabajador: "); // Si el HashMap contiene un value con dicha key, lo devuelve if (hm.containsKey(name)) } }
Para implementarlo a tu aplicación, cada vez que creas un trabajador lo metes en el HashMap con su nombre como key y sus columnas como value, y luego para imprimir sus columnas recorres la LinkedList e imprimes, si es que tiene, su publicación. Espero que te sirva, saludos!
|
|
|
En línea
|
Do or do not, there is no try.
Que la masa por la derivada de la velocidad respecto al tiempo te acompañe.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
dificultades con cap9
Ingeniería Inversa
|
_Bj0rD_
|
6
|
2,950
|
15 Febrero 2005, 07:20 am
por _Bj0rD_
|
|
|
¿como hacer que java no llame a Java Runtime Environment?
Java
|
misforos
|
3
|
4,699
|
28 Mayo 2010, 17:12 pm
por egyware
|
|
|
Que se necesita para programar en java y c++ con JNI(JAVA NATIVE INTERFACE)?
Java
|
hack-4-life
|
8
|
11,237
|
5 Octubre 2010, 03:01 am
por hack-4-life
|
|
|
El fin del roaming: las ventajas de un objetivo no exento de dificultades
Noticias
|
wolfbcn
|
0
|
1,312
|
3 Febrero 2013, 22:04 pm
por wolfbcn
|
|
|
Dificultades para utilizar Snort
GNU/Linux
|
WHK
|
2
|
3,423
|
27 Marzo 2015, 21:34 pm
por MinusFour
|
|