Har i nedanstående klass skapat en "kortlek" innehållande 52 kortobjekt ur klassen "kort". I klassen så skapas och blandas kortleken enligt kod längre ned på sidan.
I klassen TestaKortlek så skapar jag ett kortleksobjekt som jag sedan försöker läs korten ur. Men det ända som händer är att skärmen visar helt svart, coh jag vet inte hur jag ska åtgärda problemet.
Om ni vill får ni gärna kika på kodsnuttarna nedan och se om ni kan se vad som är fel, och vad jag ska göra för att undvika felet.
import java.io.*;
class TestaKortlek
{
public static void main(String args[]) throws IOException
{
Kortlek kortlek1 = new Kortlek();
for (int d=0; d<=12; d++)
{
System.out.println(kortlek1.delaUtEttKort(d).getKortvarde() + " - " + kortlek1.delaUtEttKort(d).getKortfarg());
}
}
}
import java.io.*;
import java.util.Random;
class Kortlek
{
// Klassens attribut
Kort[] arrBlandadKortlek = new Kort[52];
// Klassens konstruktor
Kortlek()
{
skapaKortlek();
}
// Skapar och blandar kortlek
private void skapaKortlek()
{
Kort[] arrKortlek = new Kort[52];
String[] arrFarger = new String[4];
int k=0, h=0, intSlumpnr;
Random generator = new Random();
arrFarger[0]="H";
arrFarger[1]="R";
arrFarger[2]="K";
arrFarger[3]="S";
for (int c=0; c<4; c++)
{
for (int p=2; p<15; p++)
{
arrKortlek[k]= new Kort(arrFarger[c],p,k+1);
k++;
}
}
while(h<52)
{
intSlumpnr=generator.nextInt(51)+1;
if(arrKortlek[intSlumpnr] != null)
{
arrBlandadKortlek[h]=arrKortlek[intSlumpnr];
arrKortlek[intSlumpnr]=null;
h++;
}
}
}
public Kort delaUtEttKort(int kort)
{
return arrBlandadKortlek[kort];
}
}