Pagina 3 di 3 primaprima 1 2 3
Visualizzazione dei risultati da 21 a 25 su 25
  1. #21
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    107
    scusami mi sono espresso male, io ho fatto cosi anzi più correttamente: java Eventoaula.Esercizio1 < in1.txt (dato che predno in imput da linea di comando il file in1.txt) solo che non mi da alcun tipo di output, cosa che invece faceva nella mia "prova" senza l'utilizzo della classe da me creata!

  2. #22
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    107
    ho trovato il problema forse mi potete aiutare

    codice:
    package Eventoaula;
    import java.util.*;
    import java.io.*;
    public class Esercizio1 {
     public static void main (String [] args) throws IOException {
            Scanner sc = new Scanner(System.in);
            String[]S;
            Evento ev;
            String z;
            ArrayList <Evento> EV = new ArrayList<Evento>();
            ArrayList <String> E = new ArrayList<String>();
            do {
                String s=sc.nextLine();
                S = s.split(",");
             
                for (String q:S)
                E.add(q);
           
           } while (sc.hasNextLine());
    
            sc.close();
        
        for (int i = 0; i<E.size()-1; i = (i+4)) {
         z = E.get(i);
         if (z=="P") {
          System.out.println ("4");
          ev = new Evento (i+1, i+2, i+3);
            for (Evento e : EV){
              System.out.println("5");
             if (e.Inserisco(ev)){
               EV.add(ev);
             System.out.println("6");
             } 
            }
         } else {
            Collections.sort(EV);
        } 
        }
        
        for (Evento e:EV)
              System.out.println(e);   
     }
    }
    In questo programma non mi "entra" nell'if a riga 25 dove chiedo l'uguaglianza infatti dopo non mi da in ouput come da richiesta prova il numero 4, però se a riga 24 scrivo System.out.println ("4") invece me lo da, dove ho sbagliato?
    Ultima modifica di ROCCHEFILI; 09-02-2015 a 17:51

  3. #23
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Le stringhe (e, più in generale, gli oggetti) non si confrontano con l'operatore == (quello si usa solo per i tipi di dato primitivi).
    Gli oggetti (e le stringhe sono oggetti) si confrontano usando il metodo equals():

    codice:
    if ( z.equals("P") ) {
       ...
    }

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #24
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    107
    che idiota non mi ricordava più, grazie!

  5. #25
    Perché l'eguaglianza non si fa con "==", bensì con


    codice:
      
    if (z.equals("P"))
    oppure
    codice:
      
    if (z.equalsIgnoreCase("P"))
    Ripassa questo capitolo
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.