Miten luodaanJava Laskentataulukon tietojen rakenne

Store laskentataulukkotiedot Java . numero taustakuvan Kuhar päässä & lt; a href = 'http: //www.fotolia.com'> Fotolia.com & lt; / a & gt;

Yksinkertaisimmillaan, voit luoda tietorakenne taulukkolaskenta Java käyttämällä yksinkertaista 2D array.Tämä lähestymistapa jättää paljon toivomisen varaa.Ihannetapauksessa, laskentataulukkotiedot rakenteen pitäisi pystyä tehokkaasti muuttaa, lisätä ja poistaa kokonaisia ​​rivejä ja sarakkeita, ja nämä toiminnot ovat laskennallisesti kalliita Java array, vaativat Java rakentaa koko tietorakenteen tyhjästä kulissien takana aina tällaisentoimenpide suoritetaan.


Sen sijaan voit käyttää jotain hieman kehittyneempiä: linkitetty lista linkitettyjen listojen.Tämä mahdollistaa sen, että lisäys ja poisto rivejä ja sarakkeita sekä koon taulukon tapahtuu paljon nopeammin.Kuitenkin, se tulee pieni suorituskyky kustannus kun on aika käyttää erityisiä soluja taulukon vuorolla.

Ohjeet

  1. Luo uusi Java-tiedoston ja nimeä se "SpreadsheetStructure.java."Jos sinulla on suosikki Integra

    ted Development Environment (IDE), voit tehdä tämän valitsemalla "File", "Uusi luokka."Vaihtoehtoisesti voit avata Windowsin Notepad napsauttamalla "Käynnistä", "Kaikki ohjelmat", "Lisävarusteet", "Muistio" ja tallenna tiedosto kyseisen tiedoston nimi.

  2. Luo luokka liitäntä liittämällä seuraavan tiedostoon vaiheessa luomasi 1. Loput vaiheet on omistettu täyttämällä koodi kullekin menetelmien määritellään tässä vaiheessa:

    public class Taulukot {

    LinkedList & amp; lt; LinkedList & gt;data = uusi LinkedList & amp; lt; LinkedList & gt; ();

    julkinen Taulukkolaskenta () {}

    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 () {}

    / **

    * Testaa luokka,

    * /

    public static void main (String [] args) {}

    }

    perustiedotdatarakenne on LinkedList rivejä, jotka sisältävät LinkedList sarakkeita.Vaikka yksinkertainen 2D array olisi yksinkertaisempi toteuttaa, se olisi myös paljon hitaampaa monia yhteisiä taulukkolaskenta toimintaa, erityisesti lisäämällä ja poistamalla rivejä.

  3. liitä seuraava koodi sulkujen väliin ja rakentaja menetelmän, "taulukkolaskenta":

    julkinen Taulukkolaskenta () {

    addRow ();

    addColumn ();

    }

    Tämä vain varmistetaan, että aloitamme ainakin yhden rivin ja sarakkeen.

  4. Liitä seuraava täyttää kaksi addRow menetelmiä.Yksi ei ota argumentteja ja lisää automaattisesti rivin lopussa taulukkolaskenta, kun taas toinen sallii käyttäjän määrittää, mihin lisätä rivi:

    public void addRow () {

    data.addLast (uusi LinkedList & amp; lt; String & gt; ());

    varten (int x = 0; X & amp; lt; getHeight (); x ++) {

    data.getLast (). Lisätään (uusi String ());

    }

    }

    public void addRow (int index) {

    data.add (indeksi, uusi LinkedList & amp; lt; String & gt; ());

    varten (int x = 0; X & amp; lt; getHeight (); x ++) {

    data.get (indeksi) .add (uusi String ());

    }

    }

  5. Liitä koodi poistaa rivi osaksi lähdetiedoston:

    public void removeRow (int index) {

    data.remove (indeksi);

    }

  6. Liitä koodi kahden addColumn menetelmiä.Nämä toiminnot samalla tavalla kuin addRow menetelmät - on kaksi, yksi lisäämällä sarake levyn pään ja yksi lisäämällä sarake keskellä:

    julkinen void addColumn () {

    varten (LinkedList l: data) {

    l.addLast (uusi String ());

    }

    }

    public void addColumn (int index) {

    varten (LinkedList L: tiedot) {

    l.add (indeksi, uusi String ());

    }

    }

  7. Liitä koodi poistamiseksi sarakkeet:

    public void removeColumn (int index) {

    varten (LinkedList L: tiedot) {

    l.remove (indeksi);

    }

    }

  8. Liitä koodi, joka määrittää sisällön tietyn solun merkkijono tiedot:

    julkinen void SetCell (int x, int y, String NewData) {

    data.get (x).setti (y, NewData);

    }

  9. Täytä menetelmiä saada leveys ja korkeus taulukkolaskenta:

    public int getWidth () {

    palata data.getFirst (). Koko ();

    }

    public int getHeight () {

    palata data.size ();

    }

  10. pantava toString menetelmällä.Tämä palauttaa alustetaan merkkijono näytetään, taulukkoon rivejä ja sarakkeita, tiedot taulukkolaskenta:

    public String toString () {

    String temp = "";

    varten (LinkedList L: tiedot) {

    varten (Object o: L) {

    String s = (String) O;

    jos (s.equals ("")), s = "-tyhjä-";

    temp + = s + "";

    }

    temp + = "\ n";

    }

    paluulämpötilan;

    }

  11. Liitä seuraava pääasiallinen menetelmä, joka tuo laskentataulukkotiedot rakenteen kautta vauhti ja varmistaa kaikki toimii odotetusti:

    julkinen staattinen void main (String [] args) {

    Taulukot arkki = uusi laskentataulukko ();

    println (sheet.toString ());

    System.out.print (sheet.getWidth ());

    System.out.print ("x");

    println (sheet.getHeight ());

    sheet.addRow ();

    System.out.print (sheet.getWidth ());

    System.out.print ("x");

    println (sheet.getHeight ());

    sheet.setCell (0,0 ", 1");

    sheet.setCell (0,1, "2");

    sheet.setCell (1,0 ", 3");

    sheet.setCell (1,1 ", 4");

    println (sheet.toString ());

    sheet.addColumn (1);

    sheet.setCell (1,0 "TEMP");

    sheet.setCell (1,1 "TEMP");

    println (sheet.toString ());

    sheet.removeRow (1);

    println (sheet.toString ());

    sheet.removeColumn (1);

    println (sheet.toString ());

    }

84
0
3
Java Ohjelmointi