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
toString
6
808
Vastaukset
- 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()-metodissaMissä 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
- 1897826
Klaukkalan onnettomuus 4.4
Klaukkalassa oli tänään se kolmen nuoren naisen onnettomuus, onko kellään mitään tietoa mitä kävi tai ketä onnettomuudes944041- 682652
Kolari Klaukkala
Kaksi teinityttö kuoli. Vastaantulijoille ei käynyt mitenkään. Mikä auto ja malli telineillä oli entä se toinen auto? Se741692Ukraina ja Zelenskyn ylläpitämä sota tuhoaa Euroopan, ei Venäjä
Mutta tätä ei YLE eikä Helsingin Sanomat kerto.3931616- 641508
Ooo! Kaija Koo saa kesämökille öky-rempan:jättimäinen terde, poreallas... Katso ennen-jälkeen kuvat!
Wow, nyt on Kaija Koon mökkipihalla kyllä iso muutos! Miltä näyttää, haluaisitko omalle mökillesi vaikkapa samanlaisen l201476Toivoisin, että lähentyisit kanssani
Tänään koin, että välillämme oli enemmän. Kummatkin katsoivat pidempään kuin tavallisesti toista silmiin. En tiedä mistä171141Kevyt on olo
Tiedättekö, että olo kevenee kummasti, kun päästää turhista asioista tai ihmisistä irti! Tämä on hyvä näin <3841068Olisinpa jo siellä, otatkohan minut vastaan
Olisitpa lähelläni ja antaisit minun maalata sinulle kuvaa siitä kaikesta ikävästä, tuskasta, epävarmuudesta ja mieleni791060