Home Hardware Networking Programmazione Software Domanda Sistemi Computer
Conoscenza del computer >> Computer >> Software >> .

Come creare una struttura dati per fogli di calcolo Java

Al livello più semplice, è possibile creare una struttura di dati per un foglio di calcolo in Java utilizzando un semplice array 2D. Tuttavia, questo approccio lascia molto a desiderare. Idealmente, una struttura di dati di fogli di calcolo dovrebbe essere in grado di ridimensionare, inserire ed eliminare in modo efficiente intere righe e colonne e queste operazioni sono computazionalmente costose in un array Java, che richiede a Java di ricostruire l'intera struttura di dati da zero dietro le quinte ogni volta che l'operazione viene eseguita.

Invece, dovresti usare qualcosa di un po 'più sofisticato: un elenco collegato di elenchi collegati. Ciò consentirà l'inserimento e la rimozione di righe e colonne nonché il ridimensionamento della tabella in modo molto più rapido. Tuttavia, avrà un piccolo costo in termini di prestazioni quando arriverà il momento di accedere a celle specifiche del foglio di calcolo.

Passaggio 1

Crea un nuovo file Java e chiamalo "SpreadsheetStructure. Giava." Se disponi di un ambiente di sviluppo integrato (IDE) preferito, puoi farlo facendo clic su "File", "Nuova classe". In alternativa, puoi aprire Blocco note di Windows facendo clic su "Start", "Tutti i programmi", "Accessori", "Blocco note" e salvando il file con quel nome.

Passaggio 2

Crea la tua interfaccia di classe con incollare quanto segue nel file creato nel passaggio 1. Il resto dei passaggi sarà dedicato alla compilazione del codice per ciascuno dei metodi definiti in questo passaggio: foglio di calcolo di classe pubblica {LinkedList data \u003d new LinkedList (); public Spreadsheet () {} public void addRow () {} public void addRow (int index) {} public void removeRow (int index) {} public void removeColumn (int index) {} public void addColumn () {} public void addColumn (int index) {} public void setCell (int x, int y, String newData) {} public int getWidth () {} public int getHeight () {} public String toString () {} /** * Verifica la classe, * /public static void main (String [] args) {}} La struttura dei dati di base sarà un Elenco di righe contenente un Elenco di colonne. Sebbene un semplice array 2D sarebbe più semplice da implementare, sarebbe anche molto più lento per molte operazioni comuni di fogli di calcolo, in particolare l'inserimento e l'eliminazione di righe.

Passaggio 3

Incollare il codice seguente tra parentesi del costruttore metodo, "Foglio di calcolo": foglio di calcolo pubblico () {addRow (); addColumn (); } Questo assicura semplicemente che iniziamo con almeno una singola riga e colonna.

Passaggio 4

Incolla quanto segue per compilare i due metodi addRow. Uno non accetta argomenti e aggiunge automaticamente la riga alla fine del foglio di calcolo, mentre l'altro consente all'utente di specificare dove aggiungere la riga: public void addRow () {data.addLast (new LinkedList ()); per (int x \u003d 0; x ()); for (int x \u003d 0; x

Passaggio 5

Incollare il codice per rimuovere una riga nel file di origine: public void removeRow (int index) {data.remove (index);}

Passaggio 6: incolla il codice per i due metodi addColumn, che funzionano in modo simile ai metodi addRow: ce ne sono due, uno per l'aggiunta di una colonna alla fine del foglio e uno per l'inserimento di una colonna nel mezzo: public void addColumn () {for (LinkedList l: data) {l.addLast (new String ());}} public void addColumn (int index) {for (LinkedList l: data) {l.add (index, new String () );}}

Passaggio 7

Incollare il codice per rimuovere le colonne: public void removeColumn (int index) {for (LinkedList l: data) {l.remove (index);}}

Passaggio 8: Incolla il codice che imposta il contenuto di una determinata cella in una stringa di dati: public void setCell (int x, int y, String newData) {data.get (x) .set (y, newData);}

Passaggio 9

Compilare i metodi per ottenere la larghezza e l'altezza del foglio di calcolo: public int getWidth () {retu "rn data.getFirst().size();", 3, [[} public int getHeight () {return data.size (); }

Passaggio 10

Implementare il metodo toString. Ciò restituirà una stringa formattata che visualizza, in una tabella di righe e colonne, i dati nel foglio di calcolo: public String toString () {String temp \u003d ""; for (LinkedList l: data) {for (Object o: l) {String s \u003d (String) o; if (s.equals ("")) s \u003d "-empty-"; temp + \u003d s + ""; } temp + \u003d "\\ n"; } temp. ritorno; }

Incolla il seguente metodo principale che mette alla prova la struttura dei dati del foglio di calcolo e assicura che tutto funzioni come previsto: public static void main (String [] args) {Spreadsheet sheet \u003d new Spreadsheet (); System.out.println (sheet.toString ()); System.out.print (sheet.getWidth ()); System.out.print ("x"); System.out.println (sheet.getHeight ()); sheet.addRow (); System.out.print (sheet.getWidth ()); System.out.print ("x"); System.out.println (sheet.getHeight ()); sheet.setCell (0,0, "1"); sheet.setCell (0,1, "2"); sheet.setCell (1,0, "3"); sheet.setCell (1,1 "4"); System.out.println (sheet.toString ()); sheet.addColumn (1); sheet.setCell (1,0, "TEMP"); sheet.setCell (1,1, "TEMP"); System.out.println (sheet.toString ()); sheet.removeRow (1); System.out.println (sheet.toString ()); sheet.removeColumn (1); System.out.println (sheet.toString ()); }

 

Computer © www.354353.com