Avatar billede juliemusen Nybegynder
25. september 2013 - 15:10 Der er 16 kommentarer og
1 løsning

retunere værdi i java

Hejsa alle sammen

Jeg er igang med en skoleopgave i BlueJ, hvor spørgsmålene er således formuleret:

http://postimg.org/image/413jm609r/

Jeg har tænkt dette indtil videre:

public class Track
{
  String artist, songName;
  Int min, sec;

   
    public Track(String name, String songName, int min, int sec)
    {
        String artist = new artist;
        String songName = new songName;
        int min = new int min;
        int sec = new int sec;
    }

    public String toString()
    {
        return artist, songName, min, sec;
    }
}

Men jeg får en fejl i min constructor. Er der nogle som kan se hvad jeg gør galt?

Kh Julie
Avatar billede arne_v Ekspert
25. september 2013 - 15:39 #1
String artist = new artist;

->

this.artist = name;

og:

int min = new int min;

->

this.min = min;

etc. vil nok hjaelpe.
Avatar billede arne_v Ekspert
25. september 2013 - 15:39 #2
Derudover skal field type vaere int ikke Int og toString syntax er ogsaa forkert.
Avatar billede juliemusen Nybegynder
25. september 2013 - 15:49 #3
Svaret er her:


public class Track
{
  private String artist, songName;
  private int min, sec;

   
    public Track(String artist, String songName, int min, int sec) {
 
        this.artist = artist;
        this.songName = songName;
        this.min = min;
        this.sec = sec;
       
    }

   
    public String toString()
    {
        return (artist + " " + songName + " " + min + ":" + sec);
    }
}
Avatar billede juliemusen Nybegynder
25. september 2013 - 15:50 #4
Hov, jeg havde ikke set du havde lagt et svar Arne. Du skal have pointene, ligger du ikke et svar? tak for det :-)
Avatar billede juliemusen Nybegynder
25. september 2013 - 16:03 #5
Lige et tilæægsspørgsmål. Når jeg kører min kode i BlueJ, så får jeg disse parametre op jeg skal udfylde:

http://postimg.org/image/71tpt0pcn/

Og min "udskrift" bliver:

http://postimg.org/image/5r6bd8wep/

Men hvorfor kommer der ikke til at stå 2:05, men 2:5. Skal jeg bruge double istedet for int? Det står der bare ikke i opgaven
Avatar billede juliemusen Nybegynder
25. september 2013 - 16:32 #6
Jeg er meget i tvivl om hvordan punkt nr 3 skal forstås. Er der nogle af jer der ved det, eller kan give et eksempel?

Kh Julie
Avatar billede arne_v Ekspert
25. september 2013 - 16:47 #7
du skal have skrevet sec ud med 2 cifre og derfor et foranstillet nul hvis det er en cifret
Avatar billede arne_v Ekspert
25. september 2013 - 16:48 #8
en loesning er:

    public String toString()
    {
        return (artist + " " + songName + " " + min + ":" + (sec<10 ? "0" : "") + sec);
    }
Avatar billede juliemusen Nybegynder
25. september 2013 - 16:53 #9
ok super mange tak for det. Overvejede nemlig også at sætte det ind i min return type. Ligger du ikke et svar Arne? Lige et alller aller sidste spørgsmål. I forhold til det med spørg 3. Er det så noget i denne stil?

public static void exam() {
       
      t1 = new t1("Rasmus Seebach", "Hvem jeg er", 3, 07);
      t2 = new t2("Guns N Roses", "Civil War", 5, 56);
      System.out.println(t1.toString());
      System.out.println(t2.toString());
      }
Avatar billede arne_v Ekspert
25. september 2013 - 16:53 #10
svar
Avatar billede arne_v Ekspert
25. september 2013 - 16:54 #11
#9 ser fornuftig ud - virker det?
Avatar billede juliemusen Nybegynder
25. september 2013 - 17:06 #12
Desværre ikke jeg får denne fejl:

http://postimg.org/image/e6n0i3b51/
Avatar billede arne_v Ekspert
25. september 2013 - 18:00 #13
Ah.

Track t1 = ...;
Track t2 = ...;
Avatar billede juliemusen Nybegynder
25. september 2013 - 18:25 #14
Jep så er den der, mange tak Arne :-)
Avatar billede arne_v Ekspert
26. september 2013 - 01:19 #15
sig mig - lavede du ikke noget mere avanceret Java for 1.5 aar siden?
Avatar billede juliemusen Nybegynder
26. september 2013 - 11:32 #16
Jo det gjorde jeg egentligt. Problematikken har været i, at jeg har kastet mig ud i alt for svære ting ift mit niveau, hvilket har resulteret i at jeg har lavet programmering hvor jeg har forsøgt mig frem, men ikke forstået det grundlæggende. Jeg gav lidt op i et lang stykke tid, og er nu vendt tilbage til det, fordi jeg meget gerne vil lære det. Jeg skal have bygget mine grundsten op, så derfor er jeg startet med mine javabøger forfra, og prøver at forstå det der rent faktisk sker.
Men jo det er meget dumt, men prøver at se positivt på det ift de fremskridt jeg laver nu, og hvor jeg nu rent faktisk synes det er sjovt, fordi jeg forstår meget mere nu end før.

Apropos det, så angående denne tråd med opjektreferencer. Lige for at forstå det korrekt. Jeg opretter to objekter i min klasse Driverm via Track t1 = new Track og Track t2 = new Track. Disse bliver kaldt i min Track metode klasse vi String(toString()). Er det ikke rigtig forstået?

Kh Julie
Avatar billede arne_v Ekspert
27. september 2013 - 01:46 #17
Jeg opretter to objekter i min klasse Driverm via Track t1 = new Track og Track t2 = new Track.

ja

Disse bliver kaldt i min Track metode klasse vi String(toString()).

forstaar jeg ikke
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester