elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  ORDENACION DE NOTAS POR FECHAS EN JAVA.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ORDENACION DE NOTAS POR FECHAS EN JAVA.  (Leído 6,168 veces)
el_otro_yo

Desconectado Desconectado

Mensajes: 20


Ver Perfil
ORDENACION DE NOTAS POR FECHAS EN JAVA.
« en: 15 Mayo 2012, 19:06 pm »

Buenas que tal, aqui llevo ya unas cuantas semanas y no logro crear una lista de notas con fechas las cuales me aparezcan por pantalla ordenadas de la mas antigua a la mas reciente. e aqui mi codigo.

import java.util.Comparator;
import java.lang.Comparable;
import java.util.List;

public class NOTA
{
    //declaracion de variables.
    protected String Titulo;
    private String Contenido;
    private int diacreacion;
    private int mescreacion;
    private int anocreacion;
    private int fecha;
    private String NOTA;
 
    protected String TIPO;
    /**
     * Constructor de objetos de la clase NOTA.
     */
    public NOTA(String TIPO, String Titulo, String Contenido, int diacreacionnuevo, int mescreacionnuevo, int anocreacionnuevo)
    {
        this.Titulo=Titulo;
        this.Contenido=Contenido;
        this.diacreacion=diacreacion;
        this.mescreacion=mescreacion;
        this.anocreacion=anocreacion;
        this.TIPO=TIPO;
        this.fecha=fecha;
        this.NOTA=NOTA;
   
    }
   
    /**
     * Ver el Titulo.
     */
    public String getTitulo()
    {
        return Titulo;
    }
    /**
     * Nuevo Titulo.
     */
    public void setTitulo(String nuevoTitulo)
    {
        Titulo=nuevoTitulo;
    }
    /**
     * Ver el Contenido.
     */
    public String getContenido()
    {
        return Contenido;
    }
    /**
     * Nuevo Contenido.
     */
    public void setContenido(String nuevoContenido)
    {
        Contenido=nuevoContenido;
    }
    /**
     * Ver el año.
     */
    public int getanocreacion()
    {
        return anocreacion;
    }
    /**
     * Nuevo año.
     */
    public void setanocreacion(int anocreacionnuevo)
    {
        anocreacion=anocreacionnuevo;
    }
    /**
     * Ver el mes.
     */
    public int getmescreacion()
    {
        return mescreacion;
    }
    /**
     * Nuevo mes.
     */
    public void setmescreacion(int mescreacionnuevo)
    {
        mescreacion=mescreacionnuevo;
    }
    /**
     * Ver el dia.
     */
    public int getdiacreacion()
    {
        return diacreacion;
    }
    /**
     * Nuevo dia.
     */
    public void setdiacreacion(int diacreacionnuevo)
    {
        diacreacion=diacreacionnuevo;
    }
    /**
     * Ver el TIPO de NOTA.
     */
    public String getTIPO()
    {
        return TIPO;
    }
    /**
     * Nuevo TIPO de NOTA.
     */
    public void setTIPO(String nuevoTIPO)
    {
        TIPO=nuevoTIPO;
    }



public void ordenacion(){
     NOTA misNotas= Arrays.asList(new NOTA("NOTA",2),
     new Titulo("LIBRO1",1),
     new Titulo("PELICULA1",5));
     Collections.sort(misNotas,new Comparator(){
                    public int compare(Object a, Object b) {
                        int diacreacion = ((Titulo)a).getCodigo();
                        int mescreacion=((Titulo)b).getCodigo();
                        int respuesta=0;
                        if(codigoPrimero<codigoSegundo){
                            respuesta=-1;
                        }
                        if(codigoPrimero>codigoSegundo){
                            respuesta=+1;
                        }
                       
                        return respuesta;
                    }
                });
       System.out.print(misNotas);         
   }
   
}



Tengo que implementarlo en el main....... pero la verdad es que llevo poco en esto y no se porque codigo empezar


Espero que alguien me ayude, gracias. :-(




En línea

Proteus1989

Desconectado Desconectado

Mensajes: 184



Ver Perfil WWW
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #1 en: 15 Mayo 2012, 20:30 pm »

Resumiendo no tienes ni pajolera idea de lo que pone y el código que has puesto o te lo ha pasado un profesor o un compañero de clase.
Corrígeme si me equivoco xD. No te preocupes, todo no se aprende de la noche a la mañana.

Dinos todo lo que no entiendas del código y si no se me adelanta nadie te lo explico encantado, pero no dejes caer el ejercicio a ver si viene alguien y te lo hace.


En línea

el_otro_yo

Desconectado Desconectado

Mensajes: 20


Ver Perfil
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #2 en: 16 Mayo 2012, 16:56 pm »

Hola, oye no es que no tenga ni pajolera idea sabes...  pero no voy a poner todas las clases que tengo realizadas con sus atributos y metodos y tal porque solo quiero saber lo de las listas, y es verdad que me estoy iniciando, nadie nace enseñado amigo mio... ;)

Si puedes ayuderme un pelin te lo agradeceria.
En línea

el_otro_yo

Desconectado Desconectado

Mensajes: 20


Ver Perfil
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #3 en: 16 Mayo 2012, 20:28 pm »

Bueno ya lo tengo solucionado eso de ordenar listas de objetos por fecha... muchas gracias al final lo hice yo solo!! si señor!!  ;D  :silbar:  yujuuu!!!
En línea

Proteus1989

Desconectado Desconectado

Mensajes: 184



Ver Perfil WWW
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #4 en: 16 Mayo 2012, 21:04 pm »

¿Para empezar... que intentas hacer en esa línea?
Código
  1. NOTA misNotas= Arrays.asList(new NOTA("NOTA",2),
  2.     new Titulo("LIBRO1",1),
  3.     new Titulo("PELICULA1",5));

No le encuentro ni pies ni cabeza
EDIT: Enhorabuena pues
En línea

el_otro_yo

Desconectado Desconectado

Mensajes: 20


Ver Perfil
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #5 en: 16 Mayo 2012, 23:38 pm »

Gracias pero lo de ordenacion de listas ya lo he resuelto con una nueva instancia de

ArrayList mi_lista = new ArrayList();

 //agregamos las NOTAS(instancias) de NOTA
        mi_lista.add("NOTA5");
        mi_lista.add("NOTA2");
        mi_lista.add("NOTA4");
        mi_lista.add("NOTA3");
        mi_lista.add("NOTA1");

y luego uso el collections.sort (mi_lista) con un for y un if y poca cosa mas.

ahora me pasa algo que no se porque me pasa, y es que en otro metodo tengo un error que dice 

Codigo:

public ArrayList<String>buscarLibretasPorNotas(String TituloNota){
     ArrayList<String>resultado=new ArrayList

     for(LIBRETA Libreta:LIBRETAS)
     {
         if(LIBRETA.NotaenLibreta(NOTA1))
         {
             resultado.add(LIBRETA.getTitulo());
         }
     }
   }

el error me sale al compilar justo entes del for y no se el porque.

es el siguiente error de compilacion: ´(´ or ´[´ expected

Si me ayudas te lo agradezco.
En línea

RyogiShiki


Desconectado Desconectado

Mensajes: 745


げんしけん - Hikkikomori FTW!!!


Ver Perfil WWW
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #6 en: 16 Mayo 2012, 23:47 pm »

Ese bucle foreach no se usa así. La forma correcta *concreta en  Este caso debería ser:

Código
  1. for( LIBRETA lib : Libreta ) {
  2.    if ( lib.NotaEnLibreta(NOTA1) )
  3.    /*Resto del código*/
  4. }
  5.  
Donde "Libreta" tiene que ser de tipo "LIBRETA". y "LIBRETA" ha deser un array o una colección
Aquí encontrarás más información de como usar foreach: http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html

Ahora te recomiendo que leas esto: http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html y lo pongás en práctica, así es más fácil para las otras personas, y seguramente más tarde para ti también leer el código que escribes.

* Suponiendo que esos son los objetos que usas ya que no conozco la totalidad de la clase

Saludos
« Última modificación: 16 Mayo 2012, 23:59 pm por RyogiShiki » En línea

el_otro_yo

Desconectado Desconectado

Mensajes: 20


Ver Perfil
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #7 en: 19 Mayo 2012, 16:04 pm »

 Buenas a ver si alguien me dice que porque me da error el compilar cuando uso la variable intermedia for??Gracias por adelantado/**
     * Almacena una NOTA nueva
     * @param NOTA La NOTA que se almacenará.
     */
    public void guardarNOTA(NOTA NOTA)
    { boolean encontrado= false;
        maximoNumeroNOTA=NOTAS.size();
        //Introduccion de una NOTA.
        for(LIBRETA lib:LIBRETAS){
        if(lib.NotaEnLibreta(NOTA1))
    {
        System.out.println("Se ha introducido la NOTA");
        encontrado=true;
    }
    }
        //Comprueba si hay dos NOTAS iguales
        for(NOTA Nota:NOTAS){
         if (Nota.getTitulo().equals(Nota.getTitulo())){
                System.out.println("ESTE TITULO YA EXISTE");
    }
         else
    {
            NOTAS.add(NOTA);
    }
    }
    }
En línea

RyogiShiki


Desconectado Desconectado

Mensajes: 745


げんしけん - Hikkikomori FTW!!!


Ver Perfil WWW
Re: ORDENACION DE NOTAS POR FECHAS EN JAVA.
« Respuesta #8 en: 19 Mayo 2012, 17:38 pm »

No has leido acaso mi mensaje? -.-! en el encontrarás toda la información necesaria de como usar foreach que es como se le denomina a lo que tu llamas "la variable intermedia for". Mira, al menos muéstranos la clase entera dentro de sus respectivas etiquetas GeSHi para saber como construir correctamente el bloque del foreach. mientras tanto y por si no lo viste, pues te cito mi mensaje anterior:

Ese bucle foreach no se usa así. La forma correcta *concreta en  Este caso debería ser:

Código
  1. for( LIBRETA lib : Libreta ) {
  2.    if ( lib.NotaEnLibreta(NOTA1) )
  3.    /*Resto del código*/
  4. }
  5.  
Donde "Libreta" tiene que ser de tipo "LIBRETA". y "LIBRETA" ha deser un array o una colección
Aquí encontrarás más información de como usar foreach: http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html

Ahora te recomiendo que leas esto: http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html y lo pongás en práctica, así es más fácil para las otras personas, y seguramente más tarde para ti también leer el código que escribes.

* Suponiendo que esos son los objetos que usas ya que no conozco la totalidad de la clase

Saludos

Espero sea de ayuda.

Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ordenacion de 2 listas de numeros en java
Java
minerva86 3 4,935 Último mensaje 22 Marzo 2009, 09:19 am
por er_rafael_rafi
problema con fechas en java y conexion a MS Acces
Java
AngelFQC 0 3,208 Último mensaje 26 Agosto 2009, 07:39 am
por AngelFQC
CODIGO DE JAVA - CALCULA LA DIFERENCIA DE FECHAS.....
Java
joseprox 0 9,457 Último mensaje 24 Junio 2010, 19:08 pm
por joseprox
Notas de evaluación Java
Java
Meta 7 5,940 Último mensaje 17 Mayo 2012, 04:20 am
por RyogiShiki
Traduccion Java a C++, 5 clases, uso de registros y fechas
Programación C/C++
DAMIANNN 1 1,864 Último mensaje 18 Enero 2017, 19:56 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines