CiaO! Ho da poco iniziato Java e ho dei problemi: Ho fatto due classi..


Sanremo.java

codice:
import java.io.*;

/*
 *d
*/

class Sanremo
{
	private String canzone;	//titolo della canzone
	private int voti;		//numero dei voti ricevuti dal pubblico; Sarà poi la giuria a decretare il vincitore
							//in caso di voti pari.
	private String categoria;	//categoria della canzone G giovani - A adulti - N nuovi talenti
	private int posizione;	//posizione raggiunta
	
	InputStreamReader input = new InputStreamReader(System.in);
	BufferedReader tastiera = new BufferedReader(input);
		
	public Sanremo()
	{
		canzone = "";
		voti = 0;
		posizione = 0;
	}
	
	public void setCanzone(int i)
	{
		System.out.println("Titolo della Canzone numero " + i+1);		
		try
		{
			canzone = tastiera.readLine();
		}
		catch(Exception e){}
		
		System.out.println("\nCategoria della Canzone numero " + i+1);		
		try
		{
			categoria = tastiera.readLine();
		}
		catch(Exception e){}
	}
	
	public void setVoti(int i)
	{
		System.out.println("\nVoti della Canzone numero " + i+1);		
		try
		{
			String votiS = tastiera.readLine();
			voti = Integer.valueOf(votiS).intValue();
		}
		catch(Exception e){}
	}
	
	public void setPosizione(int i)
	{
		System.out.println("\nPosizione della Canzone numero " + i+1);		
		try
		{
			String votiS = tastiera.readLine();
			voti = Integer.valueOf(votiS).intValue();
		}
		catch(Exception e){}
	}
	
	public void getDati()
	{
		System.out.println("" + canzone + " (" + categoria + ")-> " + voti + " voti\n");
	}
	
	public int getPunti() { return voti; }
}

ProgSanremo.java

codice:
class ProgSanremo
{
	public static void main(String argv[])
	{
		int costante = 6; //Canzoni
		
		//Dichiarazione delle Variabili -> Private
		int tot = 0;
		
		//Dichiarazioni degli oggetti
		Sanremo prima,seconda,terza;
		Sanremo canzoni[] = new Sanremo[costante];
		
		for(int i=0; i<costante; i++)
		{
			canzoni[i] = new Sanremo();
			canzoni[i].setCanzone(i);
		}
		
		//Assegno alla prima canzone le 3 posizioni. Si cambieranno, poi
		prima   = canzoni[0];
		seconda = canzoni[0];
		terza   = canzoni[0];
		
		//Calcolo le prime tre posizioni e le ritorno
		for(int i=0; i<costante; i++)
		{
			tot += canzoni[i].getPunti();
			
			int px = canzoni[i].getPunti();
			
			System.out.println(px);
			if(px > prima && px < seconda) prima = canzoni[i];
			else if(px > seconda && px < terza) seconda = canzoni[i];
			else if(px > terza) terza = canzoni[i];			 
		}
		
		System.out.println("\n\nCLASSIFICA\n\n");
		System.out.println("\n\n\t1) " + prima.getDati());
		System.out.println("\n\t2) " + seconda.getDati());
		System.out.println("\n\t3) " + terza.getDati());
	}
}


Mi da errori vari:

1) Errore su:

codice:
		System.out.println("\n\n\t1) " + prima.getDati());
		System.out.println("\n\t2) " + seconda.getDati());
		System.out.println("\n\t3) " + terza.getDati());
Mi dice che void type not allowed here.. Per tutte e tre le istruzioni

E pooi mi da errore in:


codice:
			int px = canzoni[i].getPunti();
			
			System.out.println(px);
			if(px > prima && px < seconda) prima = canzoni[i];
			else if(px > seconda && px < terza) seconda = canzoni[i];
			else if(px > terza) terza = canzoni[i];
e qui mi dice che "operator > o < cannot be applied on int,Sanremo"


AIUTOOOOO!!!