Gå til innhold

toss

Medlemmer
  • Innlegg

    564
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av toss

  1. Hei!

    For å lære meg bruk av friend har jeg laget en enkelt program som oppretter et objekt av klassen Bike, og prøver å endre de private medlemsvariablene, men selv om det kompilerer og kjører blir ikke variablene endret. Hvorfor?

     

    #include <iostream>
    #include <string>
    using namespace std;
    
    class Bike {
    private:
    int antGir;
    string farge;
    
    public:
    Bike(int gir, string f):antGir(gir),farge(f){};
    int getAntGir() {return antGir;};
    string getFarge() {return farge;};
    friend void malGul(Bike b);
    };
    void malGul(Bike b)  {
    b.farge = "gul";
    b.antGir++;
    }
    
    void main()
    {
    Bike b1(21, "svart");
    cout << "b1.farge: " << b1.getFarge() << endl;
    cout << "b1.antGir: " << b1.getAntGir() << endl;
    cout << endl << "SYKKELREPERATØREN!" << endl;
    malGul(b1);
    cout << "b1.farge: " << b1.getFarge() << endl;
    cout << "b1.antGir: " << b1.getAntGir() << endl;
    
    }

     

    Takk for svar! :)

     

    EDIT: Ai ai, pinlig sak.. Ser jeg har glemt call-by-reference..

    Kanskje en moderator vil slette/arkivere?

  2. Hei

     

    Jeg kan grunnleggende java, og i innføringsemnet i IT er jsp pensum. Men siden jeg kan både html og java fra før, og at jeg lenge har hatt lyst å kode min egen blogg fra scratch, har jeg satt meg som et mål og lage en blogg som baserer seg på jsp/java og mysql. Men jeg trenger litt tips om hvordan jeg bør organisere klassene mine.

     

    Bør jeg lage klasser for poster, brukere, kommentarer osv? Har tabeller for brukere, poster, kommentarer og kategorier.

     

    Jeg tror det egentlig kan lønne seg å ha en klasse for hver tabell. Hva tror dere om det?

     

    Det jeg er mer usikker på er om jeg bør lage en egen mysql-klasse som tar seg av å koble til databasen og kjøre spørringene? Ser ikke helt for meg at dette vil lønne seg.. Noen tanker rundt dette? Om noen har linker til gode artikler som tar opp abstraksjon setter jeg pris på det også.

  3. Har sett den, ja.. Problemet er at JTextArea, eller JTextPane som den bruker, ikke er superklassen, og jeg må derfor skrive over alle metodene som setText(), append() osv.. Det er jo for så vidt ikke noe stort problem, og kan også løses ved å ha tekstkomponenten deklarert public. Men jeg ville likevel prøve å se om jeg kunne løse dette på en litt mer elegant måte..

     

    Det nærmeste jeg kommer er dette:

     

    import java.awt.BorderLayout;
    import java.awt.Container;
    import java.awt.Dimension;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.Insets;
    import java.awt.Point;
    
    import javax.accessibility.AccessibleContext;
    
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTabbedPane;
    import javax.swing.JTextArea;
    import javax.swing.text.Document;
    import javax.swing.text.BadLocationException;
    
    
    /**
    *
    * @author Torstein
    * @author Daniel Sjöblom
    */
    public class JNumberedTextArea2 extends JTextArea {
    
    private final static String uiClassID = "NumberedTextArea2UI";
    
    
    JScrollPane scrollPane;
    
    public JNumberedTextArea2() {
    	this(null, null);
    }
    
    /**
     * Constructs a new <code>JNumberedTextArea</code> with the text in
     * the JTextArea
     *
     * @param text the text is added to the JTextArea
     */
    public JNumberedTextArea2(String text, JScrollPane scrollPane) {
    	super(text);
    
    	this.scrollPane = scrollPane;
    }
    
    @Override
    public void paint(Graphics g) {
    	super.paint(g);
    
    	int charWidth = g.getFontMetrics(this.getFont()).charWidth('0');
    	int antDigits = (int) Math.log10(this.getLineCount()) + 1;
    
    	Insets margin = this.getMargin();
    	margin.left = (charWidth * antDigits + 3);
    	margin.top = 0;
    	this.setMargin(margin);
    
    	int start = this.viewToModel(scrollPane.getViewport().getViewPosition());
    	int end = this.viewToModel(new Point(
    			scrollPane.getViewport().getViewPosition().x + this.getWidth(),
    			scrollPane.getViewport().getViewPosition().y + this.getHeight()
    			));
    
    	Document doc = this.getDocument();
    	int startline = doc.getDefaultRootElement().getElementIndex(start) + 1;
    	int endline = doc.getDefaultRootElement().getElementIndex(end) + 1;
    
    	int fontheight = g.getFontMetrics(this.getFont()).getHeight();
    	int fontdesc = g.getFontMetrics(this.getFont()).getDescent();
    	int starting_y = -1;
    
    	try {
    		starting_y = this.modelToView(start).y -
    				scrollPane.getViewport().getViewPosition().y + fontheight - fontdesc;
    	} catch(BadLocationException e1) {
    		e1.printStackTrace();
    	}
    
    	for(int line = startline, y = starting_y; line <= endline; y += fontheight, line++) {
    		g.drawString(Integer.toString(line) + ":", 0, y);
    	}
    	this.repaint();
    }
    
    public static void main(String[] args) {
      JFrame frame = new JFrame("JNumberedTextArea2");
      Container contPane = frame.getContentPane();
      JTabbedPane tabbedPane = new JTabbedPane();
      JScrollPane scrollPane = new JScrollPane();
    
      JNumberedTextArea2 textArea = new JNumberedTextArea2("This is a string\nit contains several lines\nindeed", scrollPane);
      scrollPane.setViewportView(textArea);
      tabbedPane.addTab("textArea", scrollPane);
      contPane.add(tabbedPane);
    
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.pack();
      frame.setSize(new Dimension(400, 400));
      frame.setVisible(true);
    }
    }

     

     

    Problemet her blir at det kjører en evig loop, siden paint-metoden kaller repaint(), og likevel klarer den ikke å få med linjenummer når teksten blir lang nok..

     

    Så nå har jeg egentlig gitt opp å få det til slik jeg tenkte, og baserer meg på å bruke rowHeader i JScrollPane..

     

    Tror jeg lander på noe lignende dette:

    http://forums.sun.com/thread.jspa?forumID=...974&start=2

    Det fungerer egentlig akkurat slik jeg ønsker det, med bare litt ekstra skriving..

  4. Har du i det hele tatt lest innlegget mitt?

     

    Jeg vil ha en subklasse av JTextArea som håndterer linjetall på siden..

    Klassen du har skrevet her gjør ingen av delene.. Scrolling fungerer, ja, men det i seg selv er ikke problemet..

     

    Men har funnet en annen løsning nå.. Bruker rowHeader for å legge til linjeskift.. Da blir alt nesten slik jeg ønsker det..

  5. Med mindre jeg missforstår hva du mener med scrollskit er jo dette mer eller mindre den vanlige måten å gjøre dette på.. Det har jeg allerede prøvd. For du mente at koden over skal legges til i klient-klassen?

     

    Problemet er at JSsrollPane'et ikke merker at texten er så stor at den må aktiveres. Og jeg må ha et scrollpane i klassen for tekstområdet for at denne måten å gjøre det på skal virke..

     

    EDIT:

    Er det mulig at en av metodene som er gitt av Scrollable lager rot når den blir arvet?

  6. Hei

     

    Har laget en subklasse av JTextArea som tegner linjetall på venstre side av området. I en klientklasse legger jeg til denne i en JTabbedPane, men scrollingen fungerer ikke da.. En tidligere versjon brukte JPanel som superklasse, og innholdt bare et JTextArea, men da måtte jeg skrive alle metodene for JTextArea og JTextComponent, så fant ut at jeg heller ville prøve å bruke JTextArea som superklasse. Men nå fungerer altså ikke scrollingen lenger..

     

    Klassen er her: http://pastebin.com/m4a4fac45

    evt:

    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.Insets;
    import java.awt.Point;
    
    import javax.accessibility.AccessibleContext;
    
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    import javax.swing.text.Document;
    import javax.swing.text.BadLocationException;
    
    
    /**
    *
    * @author Torstein
    * @author Daniel Sjöblom
    */
    public class JNumberedTextArea2 extends JTextArea {
    
    private final static String uiClassID = "NumberedTextArea2UI";
    
    
    JScrollPane scrollPane;
    
    public JNumberedTextArea2() {
    	this(null);
    }
    
    /**
     * Constructs a new <code>JNumberedTextArea</code> with the text in
     * the JTextArea
     *
     * @param text the text is added to the JTextArea
     */
    public JNumberedTextArea2(String text) {
    	super(text);
    	setMinimumSize(new Dimension(30, 30));
    	setPreferredSize(new Dimension(30, 30));
    	setMinimumSize(new Dimension(30, 30));
    
    	scrollPane = new JScrollPane(this);
    }
    
    @Override
    public void paint(Graphics g) {
    	super.paint(g);
    
    	int charWidth = g.getFontMetrics(this.getFont()).charWidth('0');
    	int antDigits = (int) Math.log10(this.getLineCount()) + 1;
    
    	Insets margin = this.getMargin();
    	margin.left = (charWidth * antDigits + 3);
    	margin.top = 0;
    	this.setMargin(margin);
    
    	int start = this.viewToModel(scrollPane.getViewport().getViewPosition());
    	int end = this.viewToModel(new Point(
    			scrollPane.getViewport().getViewPosition().x + this.getWidth(),
    			scrollPane.getViewport().getViewPosition().y + this.getHeight()
    			));
    
    	Document doc = this.getDocument();
    	int startline = doc.getDefaultRootElement().getElementIndex(start) + 1;
    	int endline = doc.getDefaultRootElement().getElementIndex(end) + 1;
    
    	int fontheight = g.getFontMetrics(this.getFont()).getHeight();
    	int fontdesc = g.getFontMetrics(this.getFont()).getDescent();
    	int starting_y = -1;
    
    	try {
    		starting_y = this.modelToView(start).y -
    				scrollPane.getViewport().getViewPosition().y + fontheight - fontdesc;
    	} catch(BadLocationException e1) {
    		e1.printStackTrace();
    	}
    
    	for(int line = startline, y = starting_y; line <= endline; y += fontheight, line++) {
    		g.drawString(Integer.toString(line) + ":", 0, y);
    	}
    	this.repaint();
    }
    }

     

    og klienten er her: http://pastebin.com/m2bc38e07

    evt:

    import java.awt.BorderLayout;
    import java.awt.Container;
    import java.awt.Dimension;
    
    import java.awt.event.KeyEvent;
    
    
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTabbedPane;
    import javax.swing.ScrollPaneConstants;
    
    
    class JNumberedTextArea22Client {
     JNumberedTextArea2 textArea;
     JFrame frame;
    
     public static void main(String[] args) {
    JNumberedTextArea2 textArea;
    JFrame frame;
    JTabbedPane tabbedPane;
    
    String content = "Dette er en streng\nDen har flere linjer\nJada.. det har den..";
    textArea = new JNumberedTextArea2(content);
    JNumberedTextArea2 textArea2 = new JNumberedTextArea2(content + content);
    tabbedPane = new JTabbedPane();
    frame = new JFrame("JNumberedTextArea2Client") {};
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Container innholdsrute = frame.getContentPane();
    
    tabbedPane.addTab("textArea", textArea);
    tabbedPane.setMnemonicAt(0, KeyEvent.VK_1);
    tabbedPane.addTab("textArea2", textArea2);
    tabbedPane.setMnemonicAt(1, KeyEvent.VK_2);
    JNumberedTextArea2 comp = new JNumberedTextArea2(content + "\njadda\ntextArea3");
    tabbedPane.addTab("textArea3", comp.scrollPane);
    
    
    innholdsrute.setLayout(new BorderLayout());
    innholdsrute.add(tabbedPane, BorderLayout.CENTER);
    frame.pack();
    frame.setSize(new Dimension(400, 400));
    frame.setVisible(true);
     }
    
    }

     

     

    Takker for all hjelp!

  7. 1. Er ikke helt sikker på dette selv, men slik jeg har fortsått det, består et bibliotek gjerne av flere klasser.. Eller kanskje flere pakker som igjen består av flere klasser.. Noen får rette meg om jeg har feil her..

     

    2. Man lager alltid egne klasser. Men for å lage disse bruker man de som allerede eksisterer. Et hvert program begynner å kjøre i en klasse du selv lager.

     

    3. Igjen er jeg litt usikker, men en av de viktigste forkskjellene mellom C og C++ er at C++ er objektorientert mens C ikke er det.. Så man kan vel kanskje si at C++ har klasser, mens man må kode mer grunnleggende i C..

  8. oki.. nå gjør jeg det på denne måten:

    public void lesAlleStudenterFraTekstFil(String datafilnavn) {
    FileReader filLeser = null;
    BufferedReader tekstLeser = null;
    try{
      filLeser = new FileReader(datafilnavn);
      tekstLeser = new BufferedReader(filLeser);
      // Annen kode her..
    
    } catch(FileNotFoundException e) {
      System.out.println("Kunne ikke finne filen: " + datafilnavn);
    } catch(IOException e) {
      System.out.println("IOException: " + e);
    } finally {
      try {
    	if(tekstLeser != null) {
    	  tekstLeser.close();
    	}
    	if(filLeser != nulll) {
    	  filLeser.close();
    	}
      } catch(Exception e) {}
    }
    
     }

    Er dette ok? Det er vel ca sånn de gjør det i boken, bare at de kun lukker tekstLeser uten at jeg vet hvorfor..

  9. Hei!

     

    Jeg jobber med å lage et medlemssystem som lagrer medlemmer i en txt-fil og gir mulighet for å gi en oversikt over, og redigere medlemmer. To av læringsmålene er generikk og grafisk brukergrensesnitt. Foreløpig holder jeg på med det helt grunnleggende. Målet er å lage et system hvor det er relativt lett å lage til nye typer medlemmer. Tenker å bruke en ArrayList til å holde styr på medlemmene, men jeg klarer ikke å legge medlemmene til samlingen når de konverteres fra tekstfil. Dette forsøker jeg å gjøre med en egen konstruktør som bare tar imot en streng som argument, og kalle samling.add(index, new T(str));

    class MedlemsAdmin<T extends Medlem> {
    
     private String[] feltTab;
     private String filbane;
     private List<T> samling;
    
     /**
      * Konstruktør
      * Oppretter samling av T, og oppretter GUI med liste over medlemmer
      */
     MedlemsAdmin(String[] feltTab, String filbane) {
    this.feltTab = feltTab;
    this.filbane = filbane;
    
    // Opprette samling av medlemmer.
    samling = new ArrayList<T>();
    try {
      FileReader tekstFilLeser = new FileReader(filbane);
      BufferedReader tekstLeser = new BufferedReader(tekstFilLeser);
      int antallMedlemmer = Integer.parseInt(tekstLeser.readLine());
    
      for(int i = 0; i < antallMedlemmer; i++) {
    	samling.add(i, new T(tekstLeser.readLine()));
      }
    } catch (IOException e) {
      System.out.println("Feil ved lesing av medlemmer");
    }
    // Skrive ut tabell (Opprette GUI)
     }
    }

    Jeg får følgende feilmelding:

    File: C:\Users\Torstein\Documents\Java\Medlemsystem\Versjon 0.2\MedlemsSystem\MedlemsAdmin.java [line: 42]

    Error: C:\Users\Torstein\Documents\Java\Medlemsystem\Versjon 0.2\MedlemsSystem\MedlemsAdmin.java:42: unexpected type

    found : type parameter T

    required: class

     

    Noen tips til hvordan jeg kan løse dette problemet?

    Tregner dere å se mer kode for å avgjøre det?

     

    EDIT: leif

  10. Fikk det til nå! Løsningen var altså å angi datatype på parameterne i selve metodedeklarasjonen.. Fikk ideen fra deg, pgdx, men gjorde om på min egen klasse slik at jeg nå kan angi akkurat hvilke verdier jeg vil kopiere, og lagde den også for å kopiere strenger ikke int.

    class Matrix {
    
     public static void copy(String[][] copyFrom, int startFromX, int startFromY, 
    String[][] copyTo, int startToX, int lengthX, int startToY, int lengthY) {
    
    int stopY = startFromY + lengthY;
    
    for(int i = startFromY; i < stopY; i++) {
      System.arraycopy(copyFrom[i], startFromX, copyTo[i], startToX, lengthX);
    }
    
     }
    
    }

     

    Men så et spørsmål til slutt.. Hva sier egentlig denne metodedeklarasjonen? Tenker spessielt på dette med <T>..

    public static <T> T[][] copy(T[][] t) {

  11. Har lite erfaring med programmering fra før, men har derevet litt med php. Jeg opplever større problemer med feil datatype i java, dvs at jeg får error som sier at int er funnet i stedet for string eller noe. Vet ikke om det er fordi jeg gjorde helt andre ting i php og derfor ikke støtte på de problemene, eller om det er fordi java er "strengere" på dette enn php. Lærte meg heller aldri OOP når jeg drev med php, så dette er også en overgang, og det er rart å måtte se på alt som objekter, selv arrays, om jeg har forstått det rett?

     

    Med multi-dim mener jeg i utgangspunktet to-dimensjonale, tror det blir for mye av det gode å lage metoden for n-dimensjonale for meg nå..

     

    Ønsker også at metoden skal virke for både String[][], int[][], double[][] osv..

     

    Men dersom jeg endrer til:

    public static void copy(String matrix[][])

    vil jeg vel fortsatt ikke greie å få plass til en rekke vanlige argumenter pluss et to-dimensjonalt array? burde det ikke i så fall være:

    public static void copy(String matrix[][][])

     

     

     

    EDIT: Har prøvd det siste nå, men det går heller ikke..

    Så koden ser altså slik ut nå:

     

    class Matrix {
    
     public static void copy(String[][][] args) {
    String[][] copyFrom = args[0];
    int startFromX = Integer.parseInt(args[1][0][0]);
    int startFromY = Integer.parseInt(args[2][0][0]);
    String[][] copyTo = args[3];
    int startToX = Integer.parseInt(args[4][0][0]);
    int lengthX = Integer.parseInt(args[5][0][0]);
    int startToY = Integer.parseInt(args[6][0][0]);
    int lengthY = Integer.parseInt(args[7][0][0]);
    
    int stopY = startFromY + lengthY;
    
    for(int i = startFromY; i < stopY; i++) {
      System.arraycopy(copyFrom[i], startFromX, copyTo[i], startFromX, lengthX);
    }
    
     }
    
    }

     

    Og så har jeg en klasse i en annen fil som skal lage to to-dim-arrays, og kopiere med denne metoden:

     

    class Kopier {
     public static void main(String[] args) {
    //Deklarere variabler
    String[][] matrise = {{"Anne ", "Berit ", "Heidi ", "Lise "}, 
    					  {"Alfred ", "Birger ", "Jon ", "Petter "}, 
    					  {"Andersen", "Fredriksen", "Hansen", "Thorsen"},
    					  {"Breim", "Dombås", "Helle", "Kallstad", }};
    
    String[][] kopierTil = new String[4][4];
    
    Matrix.copy(matrise, 0, 0, kopierTil, 0, 4, 0, 4);							  //(1)
    
    System.out.println(kopierTil[1][3]);
    System.out.println(kopierTil[2][1]);
     }
    }

     

    Da får jeg denne feilmeldingen:

    copy(java.lang.String[][][]) in Matrix cannot be applied to (java.lang.String[][],int,int,java.lang.String[][],int,int,int,int)

    på linje (1).

     

    Noen tips?

  12. Hei! :)

     

    Jeg prøver å lage en metode som kopierer multi-dim-arrays eller tabeller, og tror jeg begynner å nærme meg, men får ikke til å "hente" inn arrayet i metoden. Hadde jo vært lett om det var en streng, men array blir straks verre.

    Slik er koden foreløpig:

    class Matrix {
    
     public static void copy(String args[]) {
    String[][] copyFrom = args[0];						 //(1)
    int startFromX = Integer.parseInt(args[1]);
    int startFromY = Integer.parseInt(args[2]);
    String[][] copyTo = args[3];							 //(2)
    int startToX = Integer.parseInt(args[4]);
    int lengthX = Integer.parseInt(args[5]);
    int startToY = Integer.parseInt(args[6]);
    int lengthY = Integer.parseInt(args[7]);
    
    int stopY = startFromY + lengthY;
    
    for(int i = startFromY; i < stopY; i++) {
      System.arraycopy(copyFrom[i], startFromX, copyTo[i], startFromX, lengthX); //(3)
    }
    
     }
    
    }

    Får feilmelding:

    incompatible types

    found : java.lang.String

    required: java.lang.String[][]

    på linje (1) og (2)

     

    Har også prøvd med Object i stedet for String[][], men får da feilmelding:

    array required, but java.lang.Object found

    på linje (3)

     

    Noen tips til hvordan jeg kan ordne dette?

    Det beste er jo om det kan bli fikset slik at jeg ikke bare er arrays av type String[][] som kan kopieres men også int[][] og andre typer..

  13. Tusen takk! Fikk det til nå!

    Men bare for å være sikker, det jeg egentlig har gjort er å sette anArray[0] = 100 ti ganger?

     

    Og så et nytt spørsmål. Inspirert av kodeeksemplene nederst her på multi-dim-arrays og System.copyarray bestemte jeg meg for å lage en ny klasse som kopierer multi-dim-arrays. Her er den foreløpige koden, og jeg har et par problemer..

    //Lager en matrise som kan kopieres fra og en som kan kopieres til.
    class lagMatrise {
     public static void main(String[] args){
    String[][] matrise = {{"Anne ", "Berit ", "Heidi ", "Lise "}, 
    					  {"Alfred ", "Birger ", "Jon ", "Petter "}, 
    					  {"Andersen", "Fredriksen", "Hansen", "Thorsen"},
    					  {"Breim", "Dombås", "Helle", "Kallstad", }};
    String[][] kopierTil;
     }
    }
    
    class matriseCopy {
     //Declare member fields
     private static Object from;
     private static int startFromX;
     private static int startFromY;
     private static Object to;
     private static int startToX;
     private static int lengthX;
     private static int startToY;
     private static int lengthY;
    
     public static void main(String[] args) {
    copyFrom = args[0];
    startFromX = Integer.parseInt(args[1]);
    startFromY = Integer.parseInt(args[2]);
    copyTo = args[3];
    startToX = Integer.parseInt(args[4]);
    lengthX = Integer.parseInt(args[5]);
    startToY = Integer.parseInt(args[6]);
    lengthY = Integer.parseInt(args[7]);
    
    for(int i = 0; i < lengthY; i++){
      System.arraycopy(copyFrom, startFromX, copyTo, lengthX);
    }
     }
    }
    
    /** Klassen Kopier kaller lagMatrise, oppretter en ny matrise og kopierer 
     * en bit fra lagMatrise til den nye ved å bruke matriseCopy.main().
     */
    class Kopier {
     public static void main(String[] args) {
    
    System.out.println(new String(matrise));
     }
    }

    Først av alt er jeg usikker på måten å opprette felt knyttet til klassen. Skal det gjøres på denne måten? og skal de være public static? Og går dette an med objekter?

     

    Får feilmelding på linjene, copyFrom = args[0]; og copyTo = args[3];

    cannot find symbol

    symbol : variable copyFrom

    location: class matriseCopy

     

    Får så de samme to feilmeldingene på linjen System.arraycopy(copyFrom, startFromX, copyTo, lengthX);

     

    Ser altså ut til at det ikke funker å hente inn objekter slik jeg har prøvd å gjøre det. Hvordan kan dette gjøres?

     

     

    Så til slutt får jeg en feilmelding på linjen System.out.println(new String(matrise));

    Hva er galt her?

    (Vet at klassen Kopier ikke gjør noe av det den skal gjøre enda. Det kommer ;))

  14. Igjen, takk for svar!

    Har begynt å prøve litt på arrays, nå, og har laget følgende klasse som skal opprette et array med plass til ti interers, og gi verdier 100, 200, 300 og opp til 1000.

    class ArrayDemo {
     public static void main(String[] args) {
    int anArray[] = new int[10]; //Deklarere et array, men plass for 10 integere
    
    //gi verdi til indexene i anArray, verdier fra 100 til 1000
    for(int item : anArray) {
      anArray[item] = (item + 1)*100;
    }
    
    //Skrive ut anArray
    int i = 0;
    for(int item : anArray) {
      System.out.println("Index " + i + " i anArray er " + item + "!");
      i++;
    }
     }
    }

    Men det funker ikke helt. Får bare output:

     

    Index 0 i anArray er 100!

    Index 1 i anArray er 0!

    Index 2 i anArray er 0!

    Index 3 i anArray er 0!

    Index 4 i anArray er 0!

    Index 5 i anArray er 0!

    Index 6 i anArray er 0!

    Index 7 i anArray er 0!

    Index 8 i anArray er 0!

    Index 9 i anArray er 0!

     

    Noen som ser noe gale? Skulle tro at problemet ligger i en første løkken, siden index 0 faktisk blir 100, men resten blir null, men vet ikke..

×
×
  • Opprett ny...