View Full Version : [java] programmino
Devo fare questo programma in java in cui inserisco un po di persone e mi calcoli quanti sono maschi. Solo che mi restituisce sempre zero....Potete trovarmi il problema?
import java.io.*;
class aula
public static void main(String args[])
{
InputStreamReader In=new InputStreamReader(System.in);
BufferedReader Tastiera=new BufferedReader(In);
try
{
System.out.print("Quanti alunni vuoi inserire? ");
int numal=Integer.parseInt(Tastiera.readLine());
int x=0;
for(int i=0;i<numal;i++)
{
System.out.print("Inserisci il nome: ");
String nm=Tastiera.readLine();
System.out.print("Inserisci il cognome: ");
String cg=Tastiera.readLine();
System.out.print("Inserisci il sesso: ");
String se=Tastiera.readLine();
if(se=="maschio")
{
x=x+1;
}
}
System.out.print(x);
}
catch(Exception E)
{
System.out.print("Errore");
}
}
}
vincenzo83
29-05-2008, 17:21
Ciao, così a prima vista direi di sostituire
if(se=="maschio")
con
if(se.equal("maschio"))
prova e vedi se funziona
un'altra cosa: ti consiglio di vedere la classe Scanner per acquisire l'input
così mi da errore....invece con la classe Scanner come devo fare?
vincenzo83
29-05-2008, 17:39
invece con la classe Scanner come devo fare?
per acquisire una stringa:
Scanner in = new Scanner(System.in);
String nome = in.nextLine()
per dettagli vedi: http://home.dei.polimi.it/baresi/ingSw/06-java.pdf
Per l'errore non so, è da molto che non programmo in java e in questo momento non posso eseguire programmi java per controllare
Un'altra cosa: perché hai messo il blocco try catch?
mah per la gestione degli errori.....(Calcola ke sono appena 2 settimane ke ho iniziato a programmare in java)....cmq grazie della risposta...
vincenzo83
29-05-2008, 17:46
...riporta l'errore che esce, così gli altri utenti possono aiutarti.
EDIT: ho un ipotesi sull'eventuale errore, ma è inutile andare per tentativi meglio attendere quelli bravi :D
l'errore ke mi da quando faccio :
if(se.equal("maschio"))
{
x=x+1;
}
System.out.print(x);
è questo:cannot find symbol method equal(java.lang.String)
vincenzo83
29-05-2008, 17:54
ops ho dimenticato una 's' (...spero)
if(se.equals("maschio"))
vedi così
FONTE: http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html
vincenzo83
29-05-2008, 18:28
:D Sono passati diversi minuti quindi presumo che adesso funziona. Bene :)
sono ritornato per farti leggere questo:
http://www.hwupgrade.it/forum/showpost.php?p=21644969&postcount=421
direi che può essere utile. Ciaoo :)
khelidan1980
29-05-2008, 19:09
e io ti consiglio ti usare eclipse cosi eviti di perdere un pomeriggio su una s mancante
vincenzo83
29-05-2008, 19:11
e io ti consiglio ti usare eclipse cosi eviti di perdere un pomeriggio su una s mancante
Vero, ma la 's' mancate era colpa mia :D
EDIT: :D ci sono arrivato adesso: quando metti il punto esce la lista dei metodi ...
khelidan1980
29-05-2008, 21:03
Vero, ma la 's' mancate era colpa mia :D
EDIT: :D ci sono arrivato adesso: quando metti il punto esce la lista dei metodi ...
in primis quello giustamente,poi comunque qualora tu vai a scrivere equal eclipse ti segnala al volo che è un errore,credo sia possibile perchè fa il build automatico mentre scrivi,poi va be tanti dicono che all'inizio è meglioo partire con editor e console( io stesso ho fatto così) ma se il risultato è perdere un pomeriggio su una s mancante non so quanto valga la pena
banryu79
30-05-2008, 09:43
Ragazzi, anche se programmate da poco e siete agli inizi vi consiglio comunque di investire un po' di tempo e fatica nello smazzarvi a programmare con un IDE come NetBeans o Eclipse o altri analoghi: evitate di perdere tempo in errori schiocchi come quelli di sintassi e la code completion è uno strumento, imho, molto utile anche per "ispezionare al volo" (questa affermazione farà inorridire qualcuno :D) le capacità di una classe (considerando che le relative informazioni dei Javadoc compaiono con un popup) e quindi rendersi conto prima delle varie possibilità.
Poi chiaro, uno approfondisce sempre studiando in maniera seria.
Però lo ritengo uno strumento utile anche per chi è agli inizi. Senza considerare la miriade di altri tools utili che mette a disposizione un ambiente del genere: da scoprire a poco a poco, man mano che la propria competenza progredisce.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.