変数が初期化されていない可能性があるというエラーが表示されます。通常の String データ型と if..else ステートメントを使用して決定します。これは、ユーザーに 5 枚のランダムなカードを配るプログラムです。エラーが発生するのは、if else ステートメントの最初のステートメントであると思います。変数の割り当て方法は正しく、他のプログラムでも試してみましたが、それらのプログラムで動作します。誰かがこれでバグを見つけることができますか?
import java.util.Random;
public class RandomCard
{
public static void main(String[] args)
{
int cardNumber;
int cardSign;
String sign;
Random card = new Random();
for(int counter = 0; counter < 5; counter++)
{
cardSign = card.nextInt(4);
if(cardSign == 0)
{
sign = "Spades";
}
else if(cardSign == 1)
{
sign = "Hearts";
}
else if(cardSign == 2)
{
sign = "Clubs";
}
else if(cardSign == 3)
{
sign = "Diamond";
}
cardNumber = 1 + card.nextInt(13);
if(cardNumber>1 && cardNumber<11)
{
System.out.print(sign + " ");
System.out.println(cardNumber);
}
else if(cardNumber == 11)
{
System.out.print(sign + " ");
System.out.println("Jack");
}
else if(cardNumber == 11)
{
System.out.print(sign + " ");
System.out.println("Jack");
}
else if(cardNumber == 12)
{
System.out.print(sign + " ");
System.out.println("Queen");
}
else if(cardNumber == 13)
{
System.out.print(sign + " ");
System.out.println("King");
}
else if(cardNumber == 1)
{
System.out.print(sign + " ");
System.out.println("ACE");
}
}
}
}