我已生成一个随机数,将其转换为String,现在我想知道如何将“String suit”(这是一个随机数转换为字符串)分配给suitValues数组中的实际套装?
import javax.swing.JOptionPane;
public class Card
{
int roll;
String suit = "";
String number = "";
String[] numberValues = {"2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"};
String[] suitValues = {"Hearts", "Diamonds", "Clubs", "Spades"};
public void createCard()
{
roll= 1 + (int)(Math.random() * ((4-1)+1));
suit = Integer.toString(roll);
roll= (int)(Math.random() * ((13-1)+1));
number = Integer.toString(roll);
}
}
答案 0 :(得分:0)
suit = suitValues[Math.floor(Math.random()*4)];
number = numberValues[Math.floor(Math.random()*13)];
答案 1 :(得分:0)
你应该声明它们是静态类成员而不是实例成员。
static String[] numberValues = {"2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"};
static String[] suitValues = {"Hearts", "Diamonds", "Clubs", "Spades"};
其次,您拥有该类卡的套装属性,无论何时您需要知道它实际代表哪种套装,您都可以随时查看
Card.suitValues[cardInstance.suit]
答案 2 :(得分:0)
为什么要将数字转换为String
?
如果我弄错了,您希望将数组suitValues
中的随机值分配给变量suit
。然后你就可以做到这一点。
public class Card
{
int roll;
String suit = "";
String number = "";
String[] numberValues = {"2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"};
String[] suitValues = {"Hearts", "Diamonds", "Clubs", "Spades"};
public void createCard()
{
roll= (Math.floor(Math.random())) % 4;
suit = numberValues[roll];
roll= (Math.floor(Math.random())) % 13;
number = numberValues[roll];
}
}