D
doppelagent
Gast
Hi, wär super,wenn mir jemand sagen könnte, warum ich immer folgende Meldung bekomme:
http://img516.imageshack.us/my.php?image=fehlerhf1.jpg
Die angegebenen Zeilen sind in meinem Programm an ganz anderen Stellen, an denen nun wirklich ix mit ArrayLists vorkommt...
Eigentlich bin ich mir sicher, dass ich den index richtig verwende, also die schleifen richtig sind... kenne mich aber mit ArrayLists auch nicht so gut aus, bin anfänger...
Hoffe es macht sich einer die Mühe mal kurz zu drüberzugucken...
Hier werden die Daten erzeugt und verwendet:
Das sind die relevanten Klassen, die ArrayList 's haben:
[/code]
http://img516.imageshack.us/my.php?image=fehlerhf1.jpg
Die angegebenen Zeilen sind in meinem Programm an ganz anderen Stellen, an denen nun wirklich ix mit ArrayLists vorkommt...
Eigentlich bin ich mir sicher, dass ich den index richtig verwende, also die schleifen richtig sind... kenne mich aber mit ArrayLists auch nicht so gut aus, bin anfänger...
Hoffe es macht sich einer die Mühe mal kurz zu drüberzugucken...
Hier werden die Daten erzeugt und verwendet:
Code:
class Kundenverwaltung
{
static CompleteSongList CSL;
ArrayList stamm = new ArrayList();
Kunde tempKunde, gefKunde;
public static void main(String [] args) throws IOException
{
Adresse MusterAdresse = new Adresse("Meier & Co", "Detmolder Str. 70", "Bielefeld", "Deutschland", "2.Etage", "meier@online.de", "0521 / 171819", "0521 / 171820", 33600);
Filiale MusterFiliale = new Filiale("Hauptsitz", "Herr Meier", MusterAdresse);
Zielgruppe MusterZielgruppe1 = new Zielgruppe("00110000100110000000000010");
Zielgruppe MusterZielgruppe2 = new Zielgruppe("00001110100010000000000010");
Kunde Musterkunde = new Kunde(16117, "Meier & Co", "Herr Meier", "0177/5567789", "www.meierundco.de", MusterAdresse);
Musterkunde.filialeHinzufuegen(MusterFiliale);
Musterkunde.setZielgruppe(MusterZielgruppe1);
Song song1 = new Song(7, "She's Madonna", "3:26", "Englisch", "Robbie Williams", 2007, MusterZielgruppe1);
Song song2 = new Song(8, "All Good Things", "3:48", "Englisch", "Nelly Furtado", 2007, MusterZielgruppe1);
Song song3 = new Song(9, "Ein Stern", "2:55", "Deutsch", "DJ Oetzi & Nik P", 2007, MusterZielgruppe2);
Jingle jingle1 = new Jingle(17, "Meier & Co - Werbung", "0:30", "Deutsch");
CSL.songHinzufuegen(song1);
CSL.songHinzufuegen(song2);
CSL.songHinzufuegen(song3);
Playlist MusterPL = new Playlist(577, "MeierPlaylist", MusterZielgruppe1);
MusterPL.PlaylistInTXT();
}
Kundenverwaltung()
{}
void KundenHinzufuegen(Kunde neu)
{
stamm.add(neu);
}
void KundenEntfernen(Kunde entf)
{
stamm.remove(entf);
}
Kunde getKunde(int knr)
{
for(int i=0; i < stamm.size(); i++)
{
tempKunde = (Kunde) stamm.get(i);
if( knr == tempKunde.getKNR() )
{
gefKunde = (Kunde) stamm.get(i);
}
}
return gefKunde;
}
}
Das sind die relevanten Klassen, die ArrayList 's haben:
Code:
class CompleteSongList
{
static ArrayList songs = new ArrayList();
static ArrayList getAllSongs()
{
return songs;
}
static void songHinzufuegen(Song x)
{
songs.add(x);
}
static void songEntfernen(Song y)
{
songs.remove(y);
}
}
.
.
.
class Kunde
{
int knr;
Adresse adresse;
String name, anspr, mobil, www;
Zielgruppe kZG;
ArrayList filialen = new ArrayList();
Kunde(int nummer, String n)
{
knr = nummer;
name = n;
}
Kunde(int nummer, String n, String ap, String m, String w)
{
knr = nummer;
name = n;
anspr = ap;
mobil = m;
www = w;
}
Kunde(int nummer, String n, String ap, String m, String w, Adresse adr)
{
knr = nummer;
name = n;
anspr = ap;
mobil = m;
www = w;
adresse = adr;
}
Kunde(int nummer, String n, String ap, String m, String w, Adresse adr, Zielgruppe z)
{
knr = nummer;
name = n;
anspr = ap;
mobil = m;
www = w;
adresse = adr;
kZG = z;
}
void filialeHinzufuegen(Filiale fil)
{
filialen.add(fil);
}
void filialeEntfernen(Filiale fil)
{
filialen.remove(fil);
}
ArrayList getAllFilialen()
{
return filialen;
}
...
class Playlist
{
int plNr;
String plName;
ArrayList pl;
Zielgruppe zg;
int abweichung;
char [] gcKunde;
char [] gcAktSong;
Playlist(int x, String n, Zielgruppe zg)
{
plNr = x;
plName = n;
pl = CompleteSongList.getAllSongs();
gcKunde = zg.getGC();
for(int i = pl.size(); i > 0; i--)
{
abweichung = 0;
gcAktSong = ((Song) pl.get(i)).getZG().getGC();
while(abweichung < 1)
{
for(int a = 0; a < 25; a++)
{
if(gcKunde[a] == '1')
{
if(gcAktSong[a] == '0' )
{
abweichung++;
}
}
}
}
if(abweichung > 0)
{
pl.remove(i);
}
}
}
void PlaylistInTXT() throws IOException
{
try
{
int songNr;
Song aktSong;
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream( plNr + "-" + plName + ".txt" ) ) );
for(int i=0; i < pl.size(); i++)
{
songNr = i+1;
aktSong = (Song) pl.get(i);
out.write(songNr + ". " + aktSong.getName() + " " + aktSong.getInterpret() + " " + aktSong.getLaenge() + " " + aktSong.getSprache() + " " + aktSong.getErschJahr() );
out.newLine();
}
out.close();
}
catch (IOException e)
{
System.out.println(e);
}
}
void jingleEinfuegAnPos(int i, Jingle x)
{
pl.add(i, x);
}
void jingleEntfernen(Jingle y)
{
pl.remove(y);
}
}
Code: