Hi,
also ich habe meinen etwas umständlichen Code ein wenig umformuliert, sodass er folgendermaßen lautet:
Nun habe ich aber das Problem, dass sobald ich die Variable value per System.out.println wiedergeben möchte, die Fehlermeldung "The variable may have not been initialized" erhalte. Warum ist das so? Wenn ich hier die Variable cardname verwende, funktioniert alles einwandfrei.
also ich habe meinen etwas umständlichen Code ein wenig umformuliert, sodass er folgendermaßen lautet:
Java:
import java.util.Random;
class tuna{
public static void main(String args[]){
Random deck = new Random();
int card;
int value;
String cardname;
for(int counter = 1; counter <= 2; counter++){
card = deck.nextInt(53);
switch(card){
case 0:
cardname = "2 of Clubs";
value = 2;
break;
case 1:
cardname = "3 of Clubs";
value = 3;
break;
case 2:
cardname = "4 of Clubs";
value = 4;
break;
case 3:
cardname = "5 of Clubs";
value = 5;
break;
case 4:
cardname = "6 of Clubs";
value = 6;
break;
case 5:
cardname = "7 of Clubs";
value = 7;
break;
case 6:
cardname = "8 of Clubs";
value = 8;
break;
case 7:
cardname = "9 of Clubs";
value = 9;
break;
case 8:
cardname = "10 of Clubs";
value = 10;
break;
case 9:
cardname = "Jack of Clubs";
value = 10;
break;
case 10:
cardname = "Queen of Clubs";
value = 10;
break;
case 11:
cardname = "King of Clubs";
value = 10;
break;
case 12:
cardname = "Ace of Clubs";
break;
case 13:
cardname = "2 of Spades";
value = 2;
break;
case 14:
cardname = "3 of Spades";
value = 3;
break;
case 15:
cardname = "4 of Spades";
value = 4;
break;
case 16:
cardname = "5 of Spades";
value = 5;
break;
case 17:
cardname = "6 of Spades";
value = 6;
break;
case 18:
cardname = "7 of Spades";
value = 7;
break;
case 19:
cardname = "8 of Spades";
value = 8;
break;
case 20:
cardname = "9 of Spades";
value = 9;
break;
case 21:
cardname = "10 of Spades";
value = 10;
break;
case 22:
cardname = "Jack of Spades";
value = 10;
break;
case 23:
cardname = "Queen of Spades";
value = 10;
break;
case 24:
cardname = "King of Spades";
value = 10;
break;
case 25:
cardname = "Ace of Spades";
break;
case 26:
cardname = "2 of Hearts";
value = 2;
break;
case 27:
cardname = "3 of Hearts";
value = 3;
break;
case 28:
cardname = "4 of Hearts";
value = 4;
break;
case 29:
cardname = "5 of Hearts";
value = 5;
break;
case 30:
cardname = "6 of Hearts";
value = 6;
break;
case 31:
cardname = "7 of Hearts";
value = 7;
break;
case 32:
cardname = "8 of Hearts";
value = 8;
break;
case 33:
cardname = "9 of Hearts";
value = 9;
break;
case 34:
cardname = "10 of Hearts";
value = 10;
break;
case 35:
cardname = "Jack of Hearts";
value = 10;
break;
case 36:
cardname = "Queen of Hearts";
value = 10;
break;
case 37:
cardname = "King of Hearts";
value = 10;
break;
case 38:
cardname = "Ace of Hearts";
break;
case 39:
cardname = "2 of Diamonds";
value = 2;
break;
case 40:
cardname = "3 of Diamonds";
value = 3;
break;
case 41:
cardname = "4 of Diamonds";
value = 4;
break;
case 42:
cardname = "5 of Diamonds";
value = 5;
break;
case 43:
cardname = "6 of Diamonds";
value = 6;
break;
case 44:
cardname = "7 of Diamonds";
value = 7;
break;
case 45:
cardname = "8 of Diamonds";
value = 8;
break;
case 46:
cardname = "9 of Diamonds";
value = 9;
break;
case 47:
cardname = "10 of Diamonds";
value = 10;
break;
case 48:
cardname = "Jack of Diamonds";
value = 10;
break;
case 49:
cardname = "Queen of Diamonds";
value = 10;
break;
case 50:
cardname = "King of Diamonds";
value = 10;
break;
case 51:
cardname = "Ace of Diamonds";
break;
default:
cardname = "Unknown";
value = 0;
}
System.out.println("Your card is the " + cardname + ".");
System.out.println("Its value is: " + value);
}
}
}
Nun habe ich aber das Problem, dass sobald ich die Variable value per System.out.println wiedergeben möchte, die Fehlermeldung "The variable may have not been initialized" erhalte. Warum ist das so? Wenn ich hier die Variable cardname verwende, funktioniert alles einwandfrei.