Visualizzazione dei risultati da 1 a 1 su 1
  1. #1

    [Java] Richiamo ricorsivo del costruttore?

    Ho realizzato un classe, che richiama il costruttore, per aggiornare tutte le variabile.
    La classe serve a risolvere un espressione matematica.

    Un esempio semplice:

    String expression = "5*2^4"

    Il programma in questo caso memorizza posizione dei numeri (5,2,4) e degli operatori (*,^)

    Quando l'operatore si trova tra i due numeri computa l'operazione.

    Ovviamente il programma risolve le parentesi, le funzioni(sin, cos) e tiene conto dei segni, anche ripetuti.

    Ho paragonato questo programma con il "Nashorn" per le performance, ed ho notato che c'� una grande distinzione tra l'esecuzione di un solo ciclo o molti cicli per le due tempestiche di calcolo.

    Sebbene il mio programma sia molto pi� veloce per pochi cicli, all'aumentare di essi viene poi superato dal Nashorn.

    Infatti per computare l'espressione, richiamo il costruttore MathExpression(expression) generando una nuova istanza col new, e lo richiamo ogni volta che ho eseguito un operazione inserendo il risultato dell'oggetto in una variabile interna al metodo, che all'interno del ciclo serve a controllare se ci sono ancora numeri/operatori nell'espressione dal momento.

    All' interno della classe MathExpression, ci sono gli attributi: operatori, numeri...

    Vorrei sostituire alla chiamata del costruttore quella dei metodi che sono invocati da esso, ma se faccio cos�,
    siccome non c'� una nuova istanza, subentrano problemi, ed il programma non risolve pi�.

    Una idea � di creare una copia dell'istanza e usare quella.

    Altre idee?
    Ultima modifica di jabjoint; 27-03-2023 a 07:50
    jabjoint

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.