Ueland Skrevet 1. desember 2006 Del Skrevet 1. desember 2006 01/12: Innlevering 4 er nå lagt ut. Se dokumenter under lenken Oppgaver > Innlevering4. FYI er denne til tirsdag den 12.12 så litt bedre tid for de om skulle trenge det (Bare et tips til Emily og Berg) Lenke til kommentar
Epixx Skrevet 3. desember 2006 Del Skrevet 3. desember 2006 01/12: Innlevering 4 er nå lagt ut. Se dokumenter under lenken Oppgaver > Innlevering4. FYI er denne til tirsdag den 12.12 så litt bedre tid for de om skulle trenge det (Bare et tips til Emily og Berg) 7402695[/snapback] Jada..snart ferdig med denne uansett Lenke til kommentar
Emily83 Skrevet 3. desember 2006 Forfatter Del Skrevet 3. desember 2006 Tror prosjektet gikk veldig bra.. Men må vente å se hva karakteren blir.. Opopgaven var å lage en webside som presenterte gruppa vårpå en kreativ måte.. Nå har jeg fått min siste Java innlevering.. Så om noen føler for å hjelpe så legg emg gjerne til på msn.. [email protected] (jepp.. litt desp for help...) =)=) Lenke til kommentar
Epixx Skrevet 3. desember 2006 Del Skrevet 3. desember 2006 Tror prosjektet gikk veldig bra.. Men må vente å se hva karakteren blir.. Opopgaven var å lage en webside som presenterte gruppa vårpå en kreativ måte.. Nå har jeg fått min siste Java innlevering.. Så om noen føler for å hjelpe så legg emg gjerne til på msn.. [email protected] (jepp.. litt desp for help...) =)=) 7418279[/snapback] Playlist og mp3song? Lenke til kommentar
Haraldson Skrevet 3. desember 2006 Del Skrevet 3. desember 2006 Selvfølgelig får vi de samme oppgavene og de samme prosjektene, så ja. Lenke til kommentar
Dustwave Skrevet 4. desember 2006 Del Skrevet 4. desember 2006 Mr.Berg, tingene er at du må kunne Java før du i det hele tatt kan bruke det på web.. Og med web-programmering er det som alle andre steder man starter på her i verden, man begynner med basis-ferdighetene. Kanskje du behersker Java relativt greit, men da spør jeg deg: hvorfor tok du f.eks ikke da et ekstra fag hvor programmering mot web var hovedmålet? Lenke til kommentar
Haraldson Skrevet 4. desember 2006 Del Skrevet 4. desember 2006 Dustwave: Jeg snakker heller om et annet språk. Jeg trenger heller ikke å kunne et programmeringsspårk veldig godt for å prøve meg på web. Angående ekstra fag - jeg har bare gått på høyskole i et halvt år, og det er ennå ikke et valg for meg. Lenke til kommentar
Emily83 Skrevet 7. desember 2006 Forfatter Del Skrevet 7. desember 2006 PlayList og Mp3Song ja... har kommet meg gjennom endel av metodene, men har noen igjen.. Java er vireklig ikke min greie.. Gleder emg til neste år!! Interaktiv design .. Sux at man må bestå java for å gå alle tre årene.. må nok ta en samtale med hun med håret etterhvert.. Så Mr.Berg.. du skal gå videre i Oslo neste år da? På webCom Lenke til kommentar
Haraldson Skrevet 7. desember 2006 Del Skrevet 7. desember 2006 Så Mr.Berg.. du skal gå videre i Oslo neste år da? På webCom Mest sannsynlig, ja. Du får bare spørre om du trenger hjelp med noen av metodene, forresten, nå er jeg så godt som ferdig med innleveringa. Lenke til kommentar
Epixx Skrevet 7. desember 2006 Del Skrevet 7. desember 2006 Har bare selve testklassen igjen jeg Lenke til kommentar
Haraldson Skrevet 7. desember 2006 Del Skrevet 7. desember 2006 Thomas`: Da er det nå problemene dukker opp. Lenke til kommentar
pgdx Skrevet 7. desember 2006 Del Skrevet 7. desember 2006 Så hva er denne oppgaven vi hører så mye om, da? Lenke til kommentar
Haraldson Skrevet 7. desember 2006 Del Skrevet 7. desember 2006 Veel... Ikke den vanskeligste så langt, egentlig. I oppgaven får vi en slags kodedisposisjon over klassen PlayList, som skal kunne manipulere en array av Mp3Song-objekter. Metodeskallene er med, men vi må selv skrive selve metodekroppene. Dette skal da jobbe opp mot den ferdige Mp3Song-klassen osv., og til slutt skal vi lage et testprogram som tester alle metodene i PlayList. Høres kanskje ikke veldig vanskelig ut, men jeg syns dette var en veldig fin oppgave som jeg lærte veldig mye av. Særlig lærte jeg mye mer om hvordan metoder fungerer, hvordan skrive kode som baserer seg på DRY-prinsippene, en del basic-ting som har gått meg hus forbi og mer. Oppgavetekst [PDF] Lenke til kommentar
pgdx Skrevet 8. desember 2006 Del Skrevet 8. desember 2006 Så fin ut den oppgaven. Ganske kult at alle navn er på engelsk, det er mye bedre enn å drive på med særnorske navn. Jeg synes egentlig ikke at Mp3Song burde inneholde minutes, men heller kun seconds, som burde kunne overskride 59s. Playlist burde tatt seg av visningen av tiden. Tror forresten jeg skal gjøre den oppgaven nå. (: Lenke til kommentar
pgdx Skrevet 8. desember 2006 Del Skrevet 8. desember 2006 Jeg ser at oppgaven går ut ifra at dere bruker Mp3Song[], men jeg tror det hadde vært bedre å velge en ArrayList. Det er mye mer dynamisk enn et vanlig array. Lenke til kommentar
Haraldson Skrevet 8. desember 2006 Del Skrevet 8. desember 2006 Vel, oppgaven står i stil med hvor mye vi har lært, det er vel sånn det må bli når man skal lære noe. Lenke til kommentar
pgdx Skrevet 8. desember 2006 Del Skrevet 8. desember 2006 (endret) Jeg ville hatt noe ala dette som utgangspunkt: Playlist.java import java.util.ArrayList; import java.util.Collections; class Playlist { String playlistName; ArrayList playlist; int maxCapasity; public Playlist(String playlistName, int maxCapasity) { this.playlistName = playlistName; playlist = new ArrayList(); this.maxCapasity = maxCapasity; } public boolean isFull() { return (playlist.size() == maxCapasity); } public boolean isEmpty() { return (playlist.size() == 0); } public int getNumbersOfSongsInPlaylist() { return playlist.size(); } public void showPlaylist() { String playlistInfo = ""; for (int i = 0; i < playlist.size(); i++) { playlistInfo += ((Mp3Song)playlist.get(i)).toString(); playlistInfo += "\n"; } System.out.println("\n\tPlaylist:\n\n" + playlistInfo); } private int findFirstAvailablePosition() { //unnecessary code return -1; } private int findSongPos(String songName, String artist) { for (int i = 0; i < playlist.size(); i++) { if (artist.equals(((Mp3Song)playlist.get(i)).getArtist()) && (songName.equals(((Mp3Song)playlist.get(i)).getTrackName()))) return i; } return -1; } public boolean addSongToList(String songName, String artist, int mins, int secs, String genre) { if (!isFull()) { playlist.add(new Mp3Song(songName,artist,mins,secs,genre)); return true; } else return false; } public String getSongDetails(String songName, String artist) { return ((Mp3Song)playlist.get(findSongPos(songName, artist))).toString(); } public Mp3Song removeSong(String songName, String artist) { if (findSongPos(songName, artist) < 0) return null; Mp3Song tmp = (Mp3Song)playlist.get(findSongPos(songName, artist)); playlist.remove(findSongPos(songName, artist)); return tmp; } public int removeAllByArtist(String artistToBeRemoved) { int removedSongs = 0; for (int i = 0; i < playlist.size(); i++) { if (artistToBeRemoved.equals(((Mp3Song)playlist.get(i)).getArtist())) { playlist.remove(i); removedSongs++; i--; //Grunnet array blir kortere, og at vi ikke maa hoppe over neste } } return removedSongs; } public int removeAllByGenre(String genreToBeRemoved) { int removedSongs = 0; for (int i = 0; i < playlist.size(); i++) { if (genreToBeRemoved.toUpperCase().equals(((Mp3Song)playlist.get(i)).getGenre())) { playlist.remove(i); removedSongs++; } } return removedSongs; } } Mp3Spiller.java import java.util.Scanner; class Mp3Spiller { Mp3Spiller() { Playlist m3u = new Playlist("My favoutire hits", 10); if (!m3u.isFull()) { //songName,artist,mins,secs,genre m3u.addSongToList("Tool", "Eulogy", 8, 39, "Hard rock"); m3u.addSongToList("Tool", "Schism", 6, 11, "Hard rock"); m3u.addSongToList("Tool", "Stinkfist", 4, 20, "Christian pop"); m3u.addSongToList("Tool", "Parabol", 2, 20, "Hard rock"); m3u.addSongToList("Tool", "Parabola", 6, 43, "Hard rock"); m3u.addSongToList("Ribozyme", "(Zilch)", 5, 12, "Hard rock"); m3u.addSongToList("Rockatansky", "Sing along song", 3, 20, "Rock"); m3u.addSongToList("Rockatansky", "Broken Hill", 4, 3, "rock"); m3u.addSongToList("Ribozyme", "Blacklist Mercy", 7, 0, "Hard rock"); } m3u.showPlaylist(); System.out.println("Fjerner alle Christian Pop"); m3u.removeAllByGenre("Christian Pop"); m3u.showPlaylist(); System.out.println("Fjerner alle Rockatansky-sanger"); System.out.println("Fjernet " + m3u.removeAllByArtist("Rockatansky") + " sanger"); m3u.showPlaylist(); System.out.println("Fjerner alle Ribozyme-sanger"); System.out.println("Fjernet " + m3u.removeAllByArtist("Ribozyme") + " sanger"); m3u.showPlaylist(); System.out.println("Fjerner Tool - Eulogy"); Mp3Song tmp = m3u.removeSong("Eulogy", "Tool"); if (tmp == null) System.out.println("\nFant ikke sangen!"); else System.out.println("ok"); m3u.showPlaylist(); } public static void main(String[] args) { new Mp3Spiller(); } } Endret 9. desember 2006 av drange Lenke til kommentar
Emily83 Skrevet 9. desember 2006 Forfatter Del Skrevet 9. desember 2006 (endret) Ligger nok noe i det Mr.Berg sier om at vi må løse oppgaven etter så langt vi har kommet i læringen i denne faget her.. Dine koder var ikke helt like mine for å si det sånn.. Jeg har kommet til findSongPos metoden.. Og hadde ikke dødd om jeg fikk noen hint der... Leser til HTML eksamen også, er ikke helt sikker på om jeg blir ferdig med innleveringen.. Men men har levert de andre og fått bra på de.. Og har en mnd å lære med masse java på... Endret 9. desember 2006 av Emily83 Lenke til kommentar
pgdx Skrevet 9. desember 2006 Del Skrevet 9. desember 2006 (endret) findSongPos skal returnere en int, nemlig indeksen i tabellen (ofte representert ved en i). Så hvis du begynner med å kjøre igjennom tabellen din som du sikkert har gjort mange ganger med en for-loop, så er vi godt på vei. Jeg går her ut ifra at du har kalt tabellen din for playlist slik: Mp3Song[] playlist; playlist = new Mp3Song[antallSanger]; Her kjører vi gjennom hele tabellen: for (int i = 0; i < playlist.length; i++) { // kode for å finne en sang med artist lik artisten vi skal ha og samme for tittel } For å sammenligne alle sangene med tittel og artistnavn, må vi bruke strengsammenligneren equals slik: songName.equals(playlist[i].getTrackName()) Den sammenligner om strengen vi får inn til metoden, songName, er identisk med strengen vi får tilbake fra metoden i klassen Mp3Song, getTrackName(). Så må vi gjøre det samme med artist, og den koden blir nesten identisk: artist.equals(playlist[i].getArtist()) Og så må vi bare hive alt sammen inn i en metode, og sjekke om de finnes, hvis ikke det finnes en låt med den tittelen og den artisten, returnerer vi -1 for å fortelle programmet at den ikke eksisterer: for (int i = 0; i < playlist.length; i++) { if (playlist != null) if (artist.equals(playlist[i].getArtist()) && songName.equals(playlist[i].getTrackName())) return i; } return -1 Det hiver du inn i metodekroppen public int findSongPos(String artist, String songName) { } OBS: Jeg har ikke testet det der, og det blir sikkert noen kompilerings- og logiske feil, men lykke til. Si ifra hvis det ikke fungerer. Endret 9. desember 2006 av drange Lenke til kommentar
Epixx Skrevet 9. desember 2006 Del Skrevet 9. desember 2006 (endret) Ligger nok noe i det Mr.Berg sier om at vi må løse oppgaven etter så langt vi har kommet i læringen i denne faget her.. Dine koder var ikke helt like mine for å si det sånn.. Jeg har kommet til findSongPos metoden.. Og hadde ikke dødd om jeg fikk noen hint der... Leser til HTML eksamen også, er ikke helt sikker på om jeg blir ferdig med innleveringen.. Men men har levert de andre og fått bra på de.. Og har en mnd å lære med masse java på... 7461021[/snapback] Hva med dette: private int findSongPos(String songName, String artist){ int i = 0; while(i < songList.length){ if(songList[i] == null){} else{ if(artist.equals(songList[i].getArtist())){ if(songName.equals(songList[i].getTrackname())){ return i; } } } i++; } return -1; } Den har jeg laget i min klasse, og den fungerer i hvertfall Du kan jo sette opp som du vil, men poenget ser du der. Bare til å si i fra om du lurer på noen av de andre metodene Edit: drange, den koden vil vel i teorien returnere -1 dersom det første objektet i arrayen ikke matcher med den angitte sangen? Er derfor jeg har min return -1; utenfor selve løkken. Edit igjen: der ja, bare glem den første editen Endret 9. desember 2006 av Thomas` Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå