Metodo di classe

di il
4 risposte

Metodo di classe

Salve a tutti ho un piccolo dubbio nella creazione del seguente metodo di classe.

Supponiamo di avere una matrice le cui righe rappresentano una serie di persone e le colonne una serie di prodotti. Ciascuna cella è inizializzata a zero. Successivamente devo creare un metodo che registra l’acquisto del prodotto prod da parte dell’utente ut, che deve essere del tipo:
public void registraAcquisto(String ut, String prod){
Ho provato a scrivere un metodo ma pieno di errori. Ho dei dubbi sulla ricerca del valore inserito. Supponiamo che da input venga inserito ("Mario","Cuffie"). Come posso cercare i due valori nell'array di stringhe? E come faccio per portare il valore da 0 a 1?

Spero di essere stato chiaro, e confido in un vostro aiuto!

4 Risposte

  • Re: Metodo di classe

    alamo ha scritto:


    Supponiamo di avere una matrice le cui righe rappresentano una serie di persone e le colonne una serie di prodotti. Ciascuna cella è inizializzata a zero.
    Domande: hai davvero usato una matrice? E di che tipo è? Sei sicuro che sia il modo più appropriato?
    Se devi associare N prodotti ad una persona in realtà ci sono altri modi, ovvero altre strutture dati.

    In modo più specifico: quali operazioni devi poter compiere? Data una persona poter trovare i prodotti? Ok. Ma anche al contrario? Cioè dato un prodotto trovare le persone associate? O no?
  • Re: Metodo di classe

    andbin ha scritto:


    alamo ha scritto:


    Supponiamo di avere una matrice le cui righe rappresentano una serie di persone e le colonne una serie di prodotti. Ciascuna cella è inizializzata a zero.
    Domande: hai davvero usato una matrice? E di che tipo è? Sei sicuro che sia il modo più appropriato?
    Se devi associare N prodotti ad una persona in realtà ci sono altri modi, ovvero altre strutture dati.
    Grazie per la risposta immediata. Sfortunatamente non ho scelto io il metodo risolutivo, ma imposto dalla traccia di un esercizio.
    Si tratta di due array di Stringhe, uno per i prodotti e uno per gli utenti. Si ha poi un array di interi con valore iniziale pari a 0 per ogni utente-prodotto.

    Ecco la situazione iniziale:
    https://ibb.co/3WtJhr
  • Re: Metodo di classe

    alamo ha scritto:


    Sfortunatamente non ho scelto io il metodo risolutivo, ma imposto dalla traccia di un esercizio.
    Si tratta di due array di Stringhe, uno per i prodotti e uno per gli utenti. Si ha poi un array di interi con valore iniziale pari a 0 per ogni utente-prodotto.
    Capisco, nessun problema.
    Quindi presumo hai un String[] con i nomi, un String[] con i prodotti e poi una semplice matrice int[][] (bidimensionale quindi) per "associare" persone e prodotti.

    Se per fare "qualcosa" sulla matrice (es. registrare un prodotto) parti con il nome persona e nome prodotto, allora ci sono 3 cose da fare:
    - dal nome rintracci l'indice (che poi usi come riga nella matrice)
    - dal prodotto rintracci l'indice (che poi usi come colonna nella matrice)
    - usi riga/colonna nella matrice

    Alla fin fine, concettualmente, è tutto lì.
  • Re: Metodo di classe

    andbin ha scritto:


    alamo ha scritto:


    Sfortunatamente non ho scelto io il metodo risolutivo, ma imposto dalla traccia di un esercizio.
    Si tratta di due array di Stringhe, uno per i prodotti e uno per gli utenti. Si ha poi un array di interi con valore iniziale pari a 0 per ogni utente-prodotto.
    Capisco, nessun problema.
    Quindi presumo hai un String[] con i nomi, un String[] con i prodotti e poi una semplice matrice int[][] (bidimensionale quindi) per "associare" persone e prodotti.

    Se per fare "qualcosa" sulla matrice (es. registrare un prodotto) parti con il nome persona e nome prodotto, allora ci sono 3 cose da fare:
    - dal nome rintracci l'indice (che poi usi come riga nella matrice)
    - dal prodotto rintracci l'indice (che poi usi come colonna nella matrice)
    - usi riga/colonna nella matrice

    Alla fin fine, concettualmente, è tutto lì.

    Perfetto! Grazie mille per la risposta! Mi metto subito all'opera!
Devi accedere o registrarti per scrivere nel forum
4 risposte