ciao a tutti ,
spiego subito la mia perplessità
sto cercando di creare una classe Bilancio
all'interno faccio girare un file con 3 attributi :tipo(entrata/uscita),descrizione,costo;
il file viene letto correttamente ma quando confronto il tipo con una stringa utilizzando il metodo equals() salta l'if anche se il tipo è identico alla stringa e passa all'else.
metto qui il codice :
per quale motivo tipo non riconose al suo interno "uscita" pur essendoci?codice:public static void main(String[] args) { Spese objspese; File fspese; RandomAccessFile rafspese; List listspese = new ArrayList (); String tipo, desc ; double cos, racspese = 0, racentrate = 0, totale = 0; int countspe = 0 , countent = 0 ; try { fspese = new File("bilancio.txt"); rafspese = new RandomAccessFile(fspese, "rw"); if (fspese.exists()) { rafspese.seek(rafspese.length()); } rafspese.seek(0); objspese = new Spese(); while (rafspese.getFilePointer() < rafspese.length()) { objspese.Lettura(rafspese); tipo = objspese.tipo; cos = objspese.costo; if (tipo.equals("uscita")){ //questo if non viene mai letto racspese += cos; //e quindi incrementa solamente racentrate }else{ System.out.println(""); racentrate += cos; } }
spero di essermi spiegato correttamente

Rispondi quotando