toString

java-alkaja

Miten tuo toString() toimii? Koodasin taulu olion, jolla on kentät taulu (2D-taulukko), leveys ja korkeus. Yrtin tulostaa olion näin:
public String toString() {
String S=new String();
for (int i=0;i

6

838

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • java-alkaja

      public String toString() {
      String S=new String();
      for (int i=0;ipleveys; i) {
      for (int j=0;jpkorkeus; j) {
      S =taulu[i][j];
      }
      S ="\n";
      }
      return S;
      }
      }

      Tässä p on pienempi kuin -merkki

      • java-alkaja

        Suorakulmio.java:21: variable S might not have been initialized
        S =" " this.taulu[i][j];
        ^
        Suorakulmio.java:23: variable S might not have been initialized
        S ="\n";
        ^
        Suorakulmio.java:25: variable S might not have been initialized
        return S;
        ^
        3 errors


      • ........

        Vaihda tän tilalle
        String S=new String();
        Tämä
        String S = "";

        Vielä nipotusta, muuttujien nimet pitäis alkaa Javan tyylisääntöjen mukaan pienellä, eli
        String s = "";


      • java-alkaja
        ........ kirjoitti:

        Vaihda tän tilalle
        String S=new String();
        Tämä
        String S = "";

        Vielä nipotusta, muuttujien nimet pitäis alkaa Javan tyylisääntöjen mukaan pienellä, eli
        String s = "";

        Ihmettelen, miksi koodi ei vieläkään toimi

        public class Suorakulmio {
        // Tietorakenteet
        private char[][] taulu;
        private int leveys;
        private int korkeus;

        public Suorakulmio(int x, int y) {
        for (int i=0;i p leveys; i) {
        for (int j=0;j p korkeus; j) {
        this.taulu[i][j]='X';
        }
        }
        }

        public String toString() {
        String s = "";
        for (int i=0;i p this.leveys; i) {
        for (int j=0;j p this.korkeus; j) {
        s =" " this.taulu[i][j];
        }
        s ="\n";
        }
        return s;
        }

        public class Suorakulmiotesti {
        public static void main(String[] args) {
        Suorakulmio grid=new Suorakulmio(11,11);
        System.out.println(grid);
        }
        }

        Laitoin tohon metodiin
        public Suorakulmio(int x, int y)
        tulostamaan alkion 0,0 ja se tulostuu, eli vika on ilmeisesti toString()-metodissa


      • foobarfoo
        java-alkaja kirjoitti:

        Ihmettelen, miksi koodi ei vieläkään toimi

        public class Suorakulmio {
        // Tietorakenteet
        private char[][] taulu;
        private int leveys;
        private int korkeus;

        public Suorakulmio(int x, int y) {
        for (int i=0;i p leveys; i) {
        for (int j=0;j p korkeus; j) {
        this.taulu[i][j]='X';
        }
        }
        }

        public String toString() {
        String s = "";
        for (int i=0;i p this.leveys; i) {
        for (int j=0;j p this.korkeus; j) {
        s =" " this.taulu[i][j];
        }
        s ="\n";
        }
        return s;
        }

        public class Suorakulmiotesti {
        public static void main(String[] args) {
        Suorakulmio grid=new Suorakulmio(11,11);
        System.out.println(grid);
        }
        }

        Laitoin tohon metodiin
        public Suorakulmio(int x, int y)
        tulostamaan alkion 0,0 ja se tulostuu, eli vika on ilmeisesti toString()-metodissa

        Missä kohtaa koodia kerrot taululle sen koon?


      • Javakko
        foobarfoo kirjoitti:

        Missä kohtaa koodia kerrot taululle sen koon?

        Joo, 'leveys' ja 'korkeus' muuttujien arvoa ei aseteta missään vaiheessa joten tulukon kokokin on [0][0]

        Lisääpä nämä konstruktorin alkuun:

        public Suorakulmio(int x, int y) {
        leveys=x;
        korkeus=y;
        taulu=new char[x][y];
        ...
        }


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Porvarimediat paniikissa demareiden huiman kannatuksen vuoksi

      Piti sitten keksiä "nimettömiin lähteisiin" perustuen taas joku satu. Ovat kyllä noloja, ja unohtivat sen, että vaalit
      Maailman menoa
      106
      6756
    2. KATASTROFI - Tytti Tuppurainen itse yksi pahimmista kiusaajista!!!

      STT:n lähteiden mukaan SDP:n eduskuntaryhmän puheenjohtaja Tytti Tuppurainen on käyttäytynyt toistuvasti epäasiallisesti
      Maailman menoa
      378
      6387
    3. Mikä siinä on ettei persuille leikkaukset käy?

      On esitetty leikkauksia mm. haitallisiin maataloustukiin, kuin myös muihin yritystukiin. Säästöjä saataisiin lisäksi lei
      Maailman menoa
      61
      3198
    4. Lääppijä Lindtman jäi kiinni itse teosta

      Lindtman kyselemättä ja epäasiallisesti koskettelee viestintäpäällikköä. https://www.is.fi/politiikka/art-2000011780852
      Maailman menoa
      113
      2689
    5. Juuri nyt! Tytti Tuppurainen on käyttäytynyt toistuvasti epäasiallisesti

      Ai että mä nautin, Tytti erot vireille! "Käytös on kohdistunut avustajia ja toisia kansanedustajia kohtaan, uutisoi STT
      Maailman menoa
      108
      2330
    6. Onko kaivattusi

      liian vetovoimainen seksuaalisesti?
      Ikävä
      125
      1824
    7. Puolen vuoden koeaika

      Voisi toimia meillä. Ensin pitäis selvittää "vaatimukset" puolin ja toisin, ennen kuin mitään aloittaa. Ja matalalla pro
      Ikävä
      20
      1677
    8. Huomaatteko Demari Tytti ei esitä pahoitteluitaan

      Samanlainen ilmeisesti kuin Marin eli Uhriutuu no he ovat Demareita ja muiden yläpuolella siis omasta mielestään
      Maailman menoa
      34
      1495
    9. Tytti Tuppurainen nöyryyttää avustajiaan

      Tytti Tuppurainen nöyryyttää SDP:n eduskuntaryhmän kokouksissa sekä avustajia että kansanedustajia. Hän nolaa ihmisiä ju
      Kotimaiset julkkisjuorut
      182
      1357
    10. On todella hassua

      Ajatella että pitäisit erityisen kuumana tai seksikkäänä?
      Ikävä
      74
      1247
    Aihe