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
816
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
- 1271964
Noniin rakas
Annetaanko pikkuhiljaa jo olla, niin ehkä säilyy vienot hymyt kohdatessa. En edelleenkään halua sulle tai kenellekään mi1001720Lasten hyväksikäyttö netissä - Joka 3. nuori on saanut seksuaalisen yhteydenoton pedofiililtä
Järkyttävää! Lapsiin kohdistuva seksuaalinen hyväksikäyttö verkossa on yhä pahempi ongelma. Ulkolinja: Lasten hyväksikäy571360Kumpi vetoaa enemmän sinuun
Kaivatun ulkonäkö vai persoonallisuus? Ulkonäössä kasvot vai vartalo? Mikä luonteessa viehättää eniten? Mikä ulkonäössä?761320Multa sulle
Pyörit 24/7 mielessä, kuljet mun mukana, mielessä kyselen sun mielipiteitä, vitsailen sulle, olen sydän auki, aitona. M311028Mies, eihän sulla ole vaimoa tai naisystävää?
Minusta tuntuu jotenkin, että olisit eronnut joskus, vaikka en edes tiedä onko se totta. Jos oletkin oikeasti edelleen s47926Nainen, olen tutkinut sinua paljon
Salaisuutesi ei ole minulle salaisuus. Ehkä teimme jonkinlaista vaihtokauppaa kun tutkisimme toisiamme. Meillä oli kumm51923Onko sulla empatiakykyä?
Etkö tajua yhtään miltä tämä tuntuu minusta? Minä ainakin yritän ymmärtää miltä sinusta voisi tuntua. En usko, että olet44882- 109853
- 73846