whycomputer.com >> Datornätverk >  >> Programvara

Hur man skapar en Java -kalkylbladdatastruktur

På den enklaste nivån, du kan skapa en datastruktur för ett kalkylblad i Java med hjälp av en enkel 2D -array. Dock, detta tillvägagångssätt lämnar mycket att önska. Helst, en kalkylarkdatastruktur bör effektivt kunna ändra storlek, Föra in, och ta bort hela rader och kolumner, och dessa operationer är beräkningsmässigt dyra i en Java -array, kräver att Java bygger om hela datastrukturen från grunden bakom kulisserna varje gång en sådan operation utförs.

Istället, du borde använda något lite mer sofistikerat:en länkad lista med länkade listor. Detta gör att infogning och borttagning av rader och kolumner och storleken på tabellen kan ske mycket snabbare. Dock, Det kommer att medföra en liten prestandakostnad när det är dags att komma åt specifika celler i kalkylbladet i tur och ordning.

Steg 1

Skapa en ny Java -fil och ge den namnet "SpreadsheetStructure.java." Om du har en favorit Integrated Development Environment (IDE), Du kan göra detta genom att klicka på "Arkiv, "" Ny klass. "Alternativt, Du kan öppna Windows Anteckningar genom att klicka på "Start, " "Alla program, " "Tillbehör, "" Anteckningar "och spara filen med det filnamnet.

Steg 2

Skapa ditt klassgränssnitt genom att klistra in följande i filen du skapade i steg 1. Resten av stegen kommer att ägnas åt att fylla i koden för var och en av metoderna som definieras i detta steg:public class Spreadsheet {LinkedList data =ny 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 () {} /*** Testa klassen, */ public static void main (String [] args) {}} Den grundläggande datastrukturen kommer att vara en LinkedList med rader som innehåller en LinkedList med kolumner. Även om en enkel 2D -array skulle vara enklare att implementera, det skulle också vara mycket långsammare för många vanliga kalkylblad, speciellt infogning och radering av rader.

Steg 3

Klistra in följande kod mellan parenteserna i konstruktormetoden, "Kalkylark":offentligt kalkylblad () {addRow (); addColumn (); } Detta säkerställer helt enkelt att vi börjar med minst en rad och kolumn.

Steg 4

Klistra in följande för att fylla i de två addRow -metoderna. Man tar inga argument och lägger automatiskt till raden i slutet av kalkylarket, medan den andra tillåter användaren att ange var raden ska läggas till:public void addRow () {data.addLast (ny LinkedList ()); för (int x =0; x ()); för (int x =0; x

Steg 5

Klistra in koden för att ta bort en rad i källfilen:public void removeRow (int index) {data.remove (index); }

Steg 6

Klistra in koden för de två addColumn -metoderna. Dessa fungerar på samma sätt som addRow-metoderna-det finns två, en för att lägga till en kolumn i slutet av arket och en för att infoga en kolumn i mitten:public void addColumn () {för (LinkedList l:data) {l.addLast (new String ()); }} public void addColumn (int index) {för (LinkedList l:data) {l.add (index, ny sträng ()); }}

Steg 7

Klistra in koden för att ta bort kolumner:public void removeColumn (int index) {för (LinkedList l:data) {l.remove (index); }}

Steg 8

Klistra in koden som anger innehållet i en given cell till en sträng med data:public void setCell (int x, int y, String newData) {data.get (x) .set (y, newData); }

Steg 9

Fyll i metoderna för att få bredden och höjden på kalkylbladet:public int getWidth () {return data.getFirst (). Size (); } public int getHeight () {return data.size (); }

Steg 10

Implementera toString -metoden. Detta returnerar en formaterad sträng som visar i en tabell med rader och kolumner, data i kalkylarket:public String toString () {String temp =""; för (LinkedList l:data) {för (Object o:l) {String s =(String) o; if (s.equals ("")) s ="-empty-"; temp + =s + ""; } temp +="\ n"; } returtemp; }

Klistra in följande huvudmetod som sätter kalkylbladets datastruktur genom sina steg och ser till att allt fungerar som förväntat:public static void main (String [] args) {Spreadsheet sheet =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 ()); }


URL:https://sv.whycomputer.com/programvara/1014003315.html

Programvara
  • Hur man skapar en faktura på eBay

    EBay är ett auktionshus online där användare kan köpa eller sälja föremål över hela världen. För att få betalning för en vara du sålde på eBay, du måste skicka en faktura till den vinnande budgivaren. Fakturor inkluderar försäljningspris, frakt- och hanteringsavgifter, och eventuella tillämpliga ska

  • Hur man skapar en kalender från kalkylbladdata

    Med hjälp av ett kalkylblad som Microsoft Excel eller Google Docs -kalkylblad för att skapa en kalender kan du skapa en anpassad vy för projektledning, volontärarbete eller familjeaktiviteter. Skapa alla 12 månader i ett enda kalkylblad eller skapa var och en i ett separat kalkylblad och använd form

  • Hur man skapar en PGP -nyckel

    Pretty Good Privacy (PGP) är en krypteringsteknik som används för att skicka och ta emot meddelanden. Krypteringsprocessen utförs med hjälp av skrivbordsprogramvaran. När du installerar PGP -programvaran, du måste skapa en nyckel. En PGP -nyckel är koden som används för att dekryptera meddelanden nä

Datornätverk © https://sv.whycomputer.com